三、JavaSpace
Jini提供了在分散式環境中尋找( look-up)、注冊( registration)、租借(leasing)等功能。而 JavaSpaces則負責管理分散式物件的處理程序( processing)、分享(sharing)、以及流通(migration )等。因此 Jini 與 JavaSpaces 彼此存在著相互合作的關系[3] 。以軍隊作比喻, Jini扮演的是軍 官的角色,負責分派許多武器裝備給軍隊。JavaSpaces則扮演軍隊的角色,負則使用那些被分派的武器以執行命令。簡單的說, JavaSpaces就好像網路上的一個市場,它提供一個簡單、快速、統一的介面,讓網路上分散的資源可以被分享、協調與流通[4] 。
JavaSpaces是用 Java所發展的技術,并且以RMI實作其網路通訊的功能,一般應用在n-tiers 架構的中間層( middle tiers)[5] 。JavaSpaces雖然能提供 求者與供應者之間查詢與溝通的機制,但它并不是資料庫,而是以簡單的messaging system為基礎,進而提供更強大的功能。
除了Jini之外, JavaSpaces技術也可被應用在其它系統與服務中,如: Workflow systems 、Customer management systems、Supply chain management 、Intelligent rich data distribution、 Trading services 、Auction systems 、Resource allocation and management systems、Agent Systems、以及 Publish and subscribe services等[4] 。
四、應用
Jini技術有一個主要目的:讓許多電子產品可以容易的被加入至網路上,也就是隨插即用(plug-and-play) [6] 。任何物件,如: DVD、CD 、VCR、桌上型電腦、可攜式電腦、印表機、掃描器、磁碟機、播放器、電話、電視機、警報系統、醫療器材、空調系統、廚具、汽車引擎、汽車的丁器板等,只要利用Jini技術,就可以結合各類的電子產品成為網路上的資源服務[6] ,而使用者只 透過電話或無限通訊器材就能使用這些服務。
想像一個劇情:一個使用者坐在公園里,想要透過掌上型電腦來使用網路上的印表機,但是他并沒有任何印表機的驅動程式。首先,Jini會啟動 Lookup服務(類似 JavaSpaces),到聯盟(federation )中搜尋符合使用者條件的印表機。找到之後,Jini會跟那臺印表機溝通,取得它的驅動程式,并且傳至使用者的掌上型電腦。使用者於是可以輕易的使用網路上的印表機。
我們也可以把家中的電器用品都結合到網路上,這樣可以讓我們在任何時間、任何地點來控制家里的電器,這將是多堋令人期待的一個理想。
目前已經有許多公司正在發展相關的技術,這些公司包括Axis、Canon、 Computer Associates、Datek 、Enocanto、Epson 、Ericsson、FedEx 、Mitsubishi、 Norwest Mortgage 、Novell、ODI、 Oki、Quantum、 Salomon Brother、 Seagate、以及 Toshiba等。
五、結論
Jini讓許多電器設備、網路服務結成聯盟( federation)。 Jini的最上層以 Lookup機制為基礎的目錄服務( directory service ),讓許多含有 Jini技術的資源,來注冊以及被公布於網路上。下一層則利用JavaSpaces 技術來管理聯盟的資源,以讓使用者或其他應用程式使用資源。底層則是以RMI為基礎的協定,用來規范物件之間在網路上的溝通。
如同SUN公司所說:「網路就是電腦(The network is the computer)」。網路的出現提供了無限的計算資源,讓我們可望達成一個超大型的計算系統。Java技術使得分散式計算變得容易可行,Jini 則實現網路就是一個超大型電腦的理想。
|