【消息隊列MQ】ActiveMq的通信方式

消息規範裏面定義最常見的幾種消息通信模式主要有發佈-訂閱、點對點這兩種。ActiveMq是JMS消息通信規範的一個實現,除了這兩種通信方式,還衍生出來了一種請求應答的模式.


1) publish-subscribe 

發佈/訂閱方式用於多接收客戶端的方式.作爲發佈訂閱的方式,可能存在多個接收客戶端,並且接收端客戶端與發送客戶端存在時間上的依賴。一個接收端只能接收他創建以後發送客戶端發送的信息。作爲subscriber ,在接收消息時有兩種方法,destination的receive方法,和實現message listener 接口的onMessage 方法。 



2) p2p   點對點方式(point-to-point) 
   點對點的消息發送方式主要建立在 Message Queue,Sender,receiver上,Message Queue 存貯消息,Sender 發送消息,receive接收消息.具體點就是Sender Client發送Message Queue ,而 receiver Client從Queue中接收消息和"發送消息已接受"到Queue,確認消息接收。消息發送客戶端與接收客戶端沒有時間上的依賴,發送客戶端可以在任何時刻發送信息到Queue,而不需要知道接收客戶端是不是在運行 



3) request-response 

和前面兩種方式比較起來,request-response的通信方式很常見,但是不是默認提供的一種模式。在前面的兩種模式中都是一方負責發送消息而另外一方負責處理。而我們實際中的很多應用相當於一種一應一答的過程,需要雙方都能給對方發送消息。於是請求-應答的這種通信方式也很重要。它也應用的很普遍。 

     請求-應答方式並不是JMS規範系統默認提供的一種通信方式,而是通過在現有通信方式的基礎上稍微運用一點技巧實現的。下圖是典型的請求-應答方式的交互過程:





參考資料:

   http://shmilyaw-hotmail-com.iteye.com/blog/1897635

   http://blog.csdn.net/agileclipse/article/details/8575569




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章