RabbitMQ教程-消息的順序性

echo編輯整理,歡迎轉載,轉載請聲明文章來源。歡迎添加echo微信(微信號:t2421499075) 交流學習。


MQ其實就是隊列,是左進右出的隊列,那是不是意味着就能保證消息的有序性?

RabbitMQ能保證消息的順序嗎?

不能!!!儘管在網上有很多的文檔都在說MQ能夠做到有序消費,但是MQ是很難做到消息的順序消費的。當然,在某些場景的下確實能夠保證大部分數據不亂。

在消費順序上出現的問題

direct類型的交換器是最有可能保證消息的順序性的,假若:我們僅有一個生產者,僅適用一個隊列,同時選用direct類型的交換機,這個時候我們是基本可以做到消息的有序性的,但是一般來說如果這麼做的話還不如我們直接使用同步接口來進行調用。完全不能體現MQ的性能。那麼如果我們使用了多個消費端的時候,雖然僅有一個隊列,他消費的時候肯定是輪訓當前隊列,但是當某個消費端出現網絡波動,就會造成消息重回隊列,其他消費端就會多消費掉一個消息。這就出現了消費順序爲題

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