前兩天我們講到Event Driven Architecture的黑魔法Event Broker,說明了它的優點,也探討內部是如何運作的。
今天我們來講跟Event Broker很像,但應用場景與機制不太一樣的另一種design pattern,Message Queue (MQ)。
常常會把他們兩個搞混,以為在講同一個設計模式,實際是不同的設計思路。
今天就讓我們好好講MQ到底在做什麼吧。
好~ 讓我們開始吧!
Message Queue(MQ)可說是Pub-Sub模式衍生出來的一種design pattern,主要的目的是用來儲存和傳遞訊息。MQ提供了Asynchronous的方式傳遞訊息,來確保訊息的順序性與持久性,等subscriber提取了這份訊息,MQ才會把訊息刪除,否則訊息會一直留在MQ裡
MQ的功能有以下幾個:
雖然Message Queue與Event Broker的功能聽起來很像,但相比於Event Broker專注在event上的處理,Message Queue則是專注在訊息的儲存和傳遞,兩者關注的點不同。當在設計系統的時候,團隊需要多加考量。
好了~今天就到這邊!!
-[基礎觀念系列] 讓任務排隊吧:Message Queue — (1)