中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

聊聊mq中消息消費的幾種方式

發布時間:2020-07-25 11:12:06 來源:網絡 閱讀:393 作者:路人甲Java 欄目:編程語言

mq系列文章

對mq了解不是很多的,可以看一下下面兩篇文章:

  1. 聊聊mq的使用場景
  2. 聊聊業務系統中投遞消息到mq的幾種方式
  3. 聊聊消息消費的幾種方式
  4. 如何確保消息至少消費一次
  5. 如何保證消息消費的冪等性

本章內容

從消費者的角度出發,分析一下消息消費的兩種方式:

  1. push方式
  2. pull方式

push方式

消息消費的過程:

  1. mq接收到消息

  2. mq主動將消息推送給消費者(消費者需提供一個消費接口)

mq屬于主動方,消費者屬于一種被動消費,一旦有消息到達mq,會觸發mq推送機制,將消息推送給消費者,不管消費者處于何種狀態。

優點:

  1. 消費者代碼較少:對于消費者來說,只需提供一個消費接口給mq即可;mq將接收到的消息,隨即推送到指定的消費接口

  2. 消息實時性比較高:對于消費者來說,消息一旦到達mq,mq會立即推送給消費者

缺點:

1.消費者屬于被動方,消息量比較大時,對消費者性能要求比較高;若消費者機器資源有限,可能會導致壓力過載,引發宕機的情況。

2.對消費者可用性要求比較高:當消費者不可用時,會導致很push失敗,在mq方需要考慮至少推送成功一次,這塊的設計下章節會做說明。

pull方式

消息消費的過程:

1.消費端采用輪詢的方式,從mq服務中拉取消息進行消費

2.消費完成通知mq刪除已消費成功的消息

3.繼續拉取消息消費

對于消費者來說,是主動方,可以采用線程池的方式,根據機器的性能來增加或縮小線程池的大小,控制拉取消息的速度,可以很好的控制自身的壓力。

優點:

1.消費者可以根據自己的性能主動控制消息拉去的速度,控制自己的壓力,不至于把自己弄跨

2.實時性相對于push方式會低一些

3.消費者屬于主動方,控制權更大一些

缺點:

1.消費方需要實現消息拉取的代碼

2.消費速度較慢時,可能導致mq中消息積壓,消息消費延遲等

總結

  1. 消費者性能較好,對實時性要求比較高的,可以采用push的方式

  2. 消費者性能有限,建議采用pull的方式

  3. 整體上來說,主要在于消費者的性能,機器的性能如果沒有問題,push和pull都是可以的

  4. 大家有什么看法,可以留言一起討論,希望本文對你有所幫助
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

疏勒县| 边坝县| 安岳县| 辽宁省| 苍梧县| 林州市| 安达市| 深泽县| 宜君县| 南平市| 鹿泉市| 洛浦县| 景德镇市| 巴楚县| 余干县| 道真| 岢岚县| 织金县| 寻甸| 东至县| 临邑县| 五河县| 博野县| 新津县| 承德县| 手游| 抚州市| 北流市| 天台县| 丰城市| 宝清县| 镇江市| 秀山| 都兰县| 湄潭县| 滁州市| 克什克腾旗| 湖北省| 汾阳市| 镇远县| 九龙城区|