国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

初識JINI技術

2019-11-18 11:36:51
字體:
來源:轉載
供稿:網友
一、前言

  長久以來許多工程師們,都一直期盼著一個超大型的計算系統,這系統是由網路上許多機器,從超大型主機乃至嵌入在某些設備上的微小晶片,彼此相互合作而成。所有的工作,都可以在任何時間被分散到網路上的任何地方、任何種類的機器上去處理。這樣的系統有很好的彈性,并且可以藉由不斷地更新設備,來解決更多問題。

  然而,我們 要一致的語言,以及更強的通訊協定( superPRotocols)等,讓網路上眾多繁雜的成員,能彼此順利地溝通。但是就目前的情況,要達到這樣的目的很難,因此我們可以考慮把一種非凡的程式碼(genetic code)嵌入到許多軟硬體之服務中,使得網路上的成員可以輕易的相互分享彼此資源,這就是 Jini 所要達成的目標。

  Jini 是由 SUN 公司 R&D 的Bill Joy 所提出的一項技術。我們可以藉著使用Jini,創造出一個富有彈性、輕易治理、且可隨時隨地使用各種服務的網路計算環境。為了讓使用者知道網路上有哪些服務可被使用,我們必須建立一個聯盟( federation ),讓網路上的服務主動加入。當有某個服務加入聯盟時,也等於同時向整個網路告知:「我可以被使用,有誰 要我的服務?」。使用者透過聯盟,可以得知有哪些服務可以使用。然而,我們要如何才能很簡單、很輕易地使用這些服務關於這個問題,也就是 Jini 的工作重點之一。

  讓我們來看看Jini 是怎堋做的。網路上的服務要能夠成為聯盟的一份子,不管是硬體服務也好、軟體服務也好,都必須嵌入Jini 的程式碼。此外,網路上還必須提供 JVM的環境,才能執行Jini程式以獲得這些服務。

  Jini的程式碼是利用 SUN 公司所提供的 Jini package 撰寫而成。Jini package使用的語言是java,并且包含了許多處理網路上資源的相關功能。例如:如何幫助網路服務尋找(discovery)、以及加入(join)聯盟;或者幫助網路服務處理分散式的承租(leasing)、交易( transactions)等的問題。而這些網路服務彼此溝通時,所應用的技術是 RMI(Java Remote Method Invocation )。簡言之,網路上的服務藉由 Jini 所提供的介面,得以相互溝通、合作,來完成使用者的

  二、體系結構

  Jini system 是由基礎建設( infrastrUCture)、程式設計模型( programming model )、服務( services) 三方面所構成。如圖一所示 :

初識JINI技術

  • 基礎建設( infrastructure)
Jini 基礎建設的核心包含以下幾個部分:

  1. Discovery Protocol:

    提供了如何讓網路上任何種類的資源加入聯盟的方式。

  2. eXtended RMI :

    Jini的元件彼此溝通時所使用的機制。

  3. Distributed Security:

    定義了Jini 聯盟成員的使用權限。

  4. Lookup Service:

    用來展現聯盟中的所有成員,以及幫助使用者尋找網路資源,或者負責提供聯盟中的資源給使用者用。

  • 程式設計模型( programming model )
Jini 提供一些分散式的程式設計模型,而 Jini 的基礎構造,就是利用這些模型來組合。模型所提供的介面(Interface),包括以下幾個類型:

  1. Leasing Interface:

    負責治理物件被使用的時間。

  2. Two Phase Commit Interface :

    是一個輕量級的(light-weight)、物件導向的( object-oriented)介面。負責治理分散式交易( transaction)的動作,如:roll back 、roll forward 等。

  3. Events Interface:

    在分散式計算的環境中,必須確保程式執行的先後順序,利用事件的觀念可以幫助我們解決這個問題。

  • 服務(services)
有了Jini的架構以及程式設計模型後,我們可以利用這些技術來設計治理網路資源的服務,以促進分散式計算的發展。例如:Javaspaces、Two Phase Commit Manager。
  三、JavaSpace

  Jini提供了在分散式環境中尋找( look-up)、注冊( registration)、租借(leasing)等功能。而 JavaSpaces則負責治理分散式物件的處理程序( processing)、分享(sharing)、以及流通(migration )等。因此 Jini 與 JavaSpaces 彼此存在著相互合作的關系 。以軍隊作比喻, Jini扮演的是軍 官的角色,負責分派許多武器裝備給軍隊。JavaSpaces則扮演軍隊的角色,負則使用那些被分派的武器以執行命令。簡單的說, JavaSpaces就似乎網路上的一個市場,它提供一個簡單、快速、統一的介面,讓網路上分散的資源可以被分享、協調與流通 。

  JavaSpaces是用 Java所發展的技術,并且以RMI實作其網路通訊的功能,一般應用在n-tiers 架構的中間層( middle tiers) 。JavaSpaces雖然能提供求者與供給者之間查詢與溝通的機制,但它并不是資料庫,而是以簡單的messaging system為基礎,進而提供更強大的功能。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湘乡市| 安塞县| 育儿| 南乐县| 高密市| 偏关县| 钦州市| 陇西县| 呼伦贝尔市| 云安县| 凤庆县| 南安市| 内黄县| 乐陵市| 师宗县| 赣州市| 宁河县| 崇州市| 新巴尔虎左旗| 文登市| 延庆县| 安徽省| 裕民县| 长治县| 砀山县| 承德县| 旌德县| 广宗县| 通州市| 顺平县| 富源县| 吉水县| 麻阳| 佛山市| 山西省| 龙陵县| 晋宁县| 武威市| 达尔| 平江县| 涟源市|