Java框架篇--MQ的原理及使用場景?你都用過哪些 MQ 中間件?

之前的文章中我們講過“手寫消息隊列”,當時粗略的講了 Java API 中使用 Queue 實現自定義消息隊列,以及使用 Delayed 實現延遲隊列的示例;同時還講了 RabbitMQ 中的一些基礎概念。本課時我們將會更加深入的講解 MQ(Message Queue,消息隊列)中間件,以及這些熱門中間件的具體使用。

我們本課時的面試題是,MQ的原理及使用場景?你都用過哪些 MQ 中間件?

回答:

在介紹 MQ 的使用場景之前,先來回憶一下 MQ 的作用。MQ 可以用來實現削峯填谷,也就是使用它可以解決短時間內爆發式的請求任務,在不使用 MQ 的情況下會導致服務處理不過來,出現應用程序假死的情況,而使用了 MQ 之後可以把這些請求先暫存到消息隊列中,然後進行排隊執行,那麼就不會出現應用程序假死的情況了,所以它的第一個應用就是商品秒殺以及產品搶購等使用場景,如下圖所示:


                                                                                  使用 MQ 實現消息通訊

使用 MQ 可以作爲消息通訊的實現手段,利用它可以實現點對點的通訊或者多對多的聊天室功能。

點對點的消息通訊如下圖所示:

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