日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RocketMQ最佳实战

發布時間:2025/4/9 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RocketMQ最佳实战 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

RocketMQ 客戶端最佳實踐

1. Producer最佳實踐

? ? 發送消息注意事項

? ? 1). 一個應用盡可能用一個Topic,消息子類型用tags來標識,tags可以由應用自由設置。

? ? 2). 消息發送成功或者失敗,要打印消息日志,務必要打印sendresult和key字段。

? ? ? ? ?SEND_OK,消息發送成功。?

? ? ?3). 對于消息不可丟失應用,務必要有消息重發機制,例如如果消息發送失敗,存儲到數據庫,能有定時程序嘗試重發,或者人工觸發重發。

2. 消息發送失敗如何處理:

? ? 1).重試

? ? 2).如果調用send同步方法發送失敗,則嘗試將消息存儲到db,由后臺線程定時重試,保證消息一定到達Broker。

3.Consumer 最佳實踐

? ? 1). 消費過程要做到冪等

? ? ? ? ?RocketMQ目前無法避免消息重復,所以如果業務對消費重復非常敏感,務必要在業務層面去重,有以下幾種去重方式:

? ? ? ? ?a).將消息的唯一鍵,可以是msgId,也可以是消息內容中的唯一標識字段,例如訂單Id等,消費之前判斷是否在Db或Tair(全局KV存儲)中存在,如果不存在則插入,并消費,否則跳過。?

? ? ? ? ?b). 用業務層面的狀態機去重。

? ? 2). 提高消費并行度

? ? ? ? ?a). 同一個ConsumerGroup下,通過增加Consumer實例數量來提高并行度,超過訂閱隊列數的Consumer實例無效。可以通過加機器,或者在已有機器啟動多個進程的方式。

? ? ? ? ?b). 提高單個Consumer的消費并行線程,通過修改以下參數: consumeThreadMin consumeThreadMax?

? ? 3). 消息批量消費

? ? 4). 跳過非重要消息

? ? 5). 優化每條消息消費過程

?

轉載于:https://www.cnblogs.com/Jtianlin/p/8653034.html

總結

以上是生活随笔為你收集整理的RocketMQ最佳实战的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。