泛型定義爲一種模式例子或模型。今天和大家共同學習一下分佈式計算泛型,分佈式計算泛型總共可劃分爲五大類共九種常見泛型,接下來一一介紹。
一、消息相關
消息相關的泛型包括消息傳遞泛型和消息系統泛型。
1.消息傳遞泛型
消息傳遞是進程之間互相通信的基本途徑。兩個進程間傳遞消息,一個爲發送者,一個爲接收者。發送者發送一條請求消息,該消息被傳送到接收者,由接收着處理後返回一條應答消息。
2.消息系統泛型
消息系統泛型或面向對象的中間件(MOM)是在基本的消息傳遞泛型的基礎上擴展來的。該消息系統可以理解成獨立與進程間的中介,這樣兩個互相通信的進程之間就沒有了請耦合關係。由發送者發送一條消息,消息被存入消息系統,然後由消息系統轉發的對應的接收者,發送者一旦將消息發送出去,就可以執行其他任務了,剩下的轉發工作有消息系統完成。
消息系統泛型可以進一步劃分爲兩種子類型:點對點消息泛型和發佈/訂閱消息泛型。
1)點對點消息泛型
這種泛型是發送者和接收者一一對應的泛型,由發送者發送一條消息到消息系統,消息系統再轉發到接收者的消息隊列中,消息系統可以提供暫存機制,將消息的發送和接收分離。接收者從自己的消息隊列中提取消息,然後加以處理。
2)發佈/訂閱消息泛型
這種泛型是多對多的泛型,多個訂閱者可以有多個訂閱,由發送者發送一條消息到消息系統,消息系統根據訂閱者的訂閱類型和消息類型將該消息轉發到每一個訂閱該類型消息的訂閱者。這種泛型可以提供一個進程向一組進程組播消息。
二、服務器相關
服務器相關的泛型包括客戶/服務器泛型和P2P泛型。
3.客戶/服務器泛型
客戶/服務器泛型由客戶端和服務器組成,將非對稱角色分配各兩個協作進程,客戶進程向服務器發起請求,並等待服務器響應,服務器等待來自客戶的請求,處理並給出迴應。
4.P2P泛型
P2P泛型源於P2P網絡(又稱爲對等計算機網絡)。這是一種無中心服務器,依賴用戶羣交換的互聯網體系,每個用戶既是一個節點,又充當服務器職責。可以說是沒有服務器,也可以說每個用戶端都是一臺服務器。
三、遠程調用相關
遠程調用相關的泛型包括遠程過程調用泛型、分佈式對象泛型和網絡服務泛型。
5.遠程過程調用泛型
提供了一種能使開發人員可以像編寫在單處理器上運行的傳統應用程序一樣,編寫分佈式軟件系統的泛型。可以採用與本地過程調用類似的思想與概念,以進行進程間通信。
6.分佈式對象泛型
分佈式對象泛型將面向對象應用到分佈式系統中,是面向對象軟件開發技術的自然擴展。可以使應用程序訪問分佈於網絡上的各個對象,通過調用對象的方法,應用層序可以獲取對服務的訪問。
1)遠程方法調用
遠程方法調用(RMI)是面向對象版本的RPC。進程可以調用對象方法,該對象可以駐留於某遠程主機中。
2)對象請求代理
對象請求代理泛型有對象請求者、對象提供者和對象請求代理組成。進程向對象請求代理髮出請求,對象請求代理將請求轉發到能提供預期服務的對象。
7.網絡服務泛型
網絡服務泛型有服務請求者、服務提供者(對象)和目錄服務三者組成。首先服務提供者將自身註冊到網絡上的目錄服務器上,當服務請求者需要訪問服務時,直接與服務器目錄聯繫,如果請求的服務可用,則由目錄服務器返回一個該服務的引用或地址,進程利用該引用與所需的服務進行交互。
四、移動代理
8.移動代理泛型
移動代理泛型是一種可移動的程序或對象。一個代理從源主機出發,然後根據其自身攜帶的執行路線,自動地在網上主機間移動。在每一臺主機上代理訪問所需的資源或服務,並執行必要的任務來完成使命。
五、雲服務
9.雲服務泛型
美國國家標準與技術研究院定義了雲計算的三種服務模型:IaaS、PaaS和SaaS。
1)基礎實施即服務(IaaS)
以服務的形式提供虛擬硬件資源、用戶無需購買服務器、網絡設備、存儲設備,只需通過互聯網租賃即可搭建自己的應用系統。
2)平臺即服務(PaaS)
提供應用服務引擎,如互聯網應用編程接口、運行平臺等。用戶基於該應用服務引擎可以構建該類應用。
3)軟件即服務(SaaS)
用戶通過Internet來使用軟件,用戶不必購買軟件,只需按需租賃軟件。