91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

RocketMQ中怎么判斷消息堆積

發布時間:2021-08-02 11:59:04 來源:億速云 閱讀:347 作者:Leah 欄目:云計算

這期內容當中小編將會給大家帶來有關RocketMQ中怎么判斷消息堆積,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一 機器部署

1、機器組成

7臺機器,均為16G內存  

每臺服務器均有4個CPU,2核

RocketMQ中怎么判斷消息堆積

2、運行環境配置

RocketMQ中怎么判斷消息堆積

3、刷盤方式

每臺機器master機器均采用異步刷盤方式

RocketMQ中怎么判斷消息堆積

RocketMQ中怎么判斷消息堆積

二 性能評測

1、評測目的

   測試rocketmq是否存在消息堆積場景。

2、評測指標

    producer發送消息的maxOffset與consumer消費消息的currOffset的差異值

    給定的常量消息堆積數值。

3、評測邏輯

  若消息offset的差異值 大于 常量堆積數值,則認為存在消息堆積的情況。

    反之則不存在消息堆積。

4、評測過程

       (1)producer端向topic名稱為“orderTopicTest”的隊列發送海量消息,定為40000條。

    (2)consumer端訂閱特定名稱的topic,并進行消費。每次消費消息,記錄當前消息的Offset;并根據“MAX_OFFSET”關鍵字,從當前消息對象獲取消息最大偏移量的屬性值,然后計算偏移量MAX_OFFSET與offset的差異值。關鍵代碼如下:

RocketMQ中怎么判斷消息堆積

(3)發送消息,記錄發送的消息及其相關日志。

      如果消息偏移量offset的差異值 大于 給定的消息堆積個數值,則記錄日志,說明存在消息堆積的情況。反之則不存在消息堆積。產生的日志如下

RocketMQ中怎么判斷消息堆積

RocketMQ中怎么判斷消息堆積

RocketMQ中怎么判斷消息堆積

   (4)消息堆積處理

    從日志看出,因producer端先運行了好一會兒,已經產生了741個消息擠壓;

    隨著consumer消費服務開啟,消息一邊產生,一邊消費,整體來說消息消費的速率高于消息產生的速率,所以消息offset的差異值在不斷的減少,故第二個截圖的情況存在:消息offset的差異值小于閾值100,所以存在正常消費與消息堆積的混合情況。

    consumer繼續消費消息,producer產生消息的速率跟不上consumer的消費速率,故第三圖就已經是正常消息消費了,即此時的消息堆積的那一部分消息已被消費。

    (5)注意事項

    rocketmq官網文檔指出,集群在有Slave情況下,Master一旦發現Consumer訪問堆積在磁盤的數據時,訪問堆積在磁盤的數據時,回向consumer下達一個指令,命令consumer從slave拉取數據,這樣使得正常發消息的consumer與正常消費消息的consumer都不會收到影響。

   此種情況前提:

    A)集群存在salve機器

    B)consumer存在消息堆積

    C)consumer因某種原因訪問磁盤數據(而非訪問pageCache等內存數據)

    這種情況的場景要求苛刻,需要在高并發的場景下才可能出現;此外,生產環境的集群配置,出現消息堆積的情況,還有可能是受到磁盤大小、網絡因素等等原因,本次測試并未深入到此場景,留待后續進一步測試。

二 評測結果

     1、消息堆積是一個相對值,針對consumer消費消息,某個topic隊列中最大的maxOffset與當前消費消息的currOffset的差異值,大于某個特定的閾值,才會出現消息堆積。

    2、當發送消息高于消息消費的速率,則可能出現消息堆積。

    3、其他條件保存正常水平,存在消息堆積的那一部分消息會隨著時間不斷減少直至消息被消費。

    4、針對過多的消息堆積,可以選擇丟棄不重要的消息,即僅僅記錄日志,而不真正消費,以此保證消息的完整性,以此來特殊處理消息的堆積情況。

上述就是小編為大家分享的RocketMQ中怎么判斷消息堆積了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

呼伦贝尔市| 闻喜县| 江油市| 图木舒克市| 南阳市| 瓮安县| 永嘉县| 陵川县| 磐石市| 黄平县| 富阳市| 长顺县| 海原县| 青浦区| 大邑县| 晋城| 白朗县| 云龙县| 聂拉木县| 芮城县| 宿迁市| 定南县| 准格尔旗| 泾阳县| 镇安县| 海兴县| 广灵县| 沈阳市| 长岭县| 诏安县| 嘉善县| 卓尼县| 永仁县| 临颍县| 河北区| 犍为县| 镇江市| 台湾省| 古蔺县| 南和县| 确山县|