RocketMQ 任意延遲 實現

2021-10-05 05:59:04 字數 246 閱讀 6381

這麼重要的功能為什麼開源版這麼久還沒有,真的是奇怪到不行了

實現後才發現網上已經有其他方案了,說下我這版實現方案自認的好處吧,後續學習下其他方案一起採長補短

api 直接沿用 阿里商業版,後續上雲還是自建都可以不影響,對企業的發展選擇比較友好

精度可以達到最小的delaylevel,也就是1秒

保持順序寫的優點,**改動極少,相對來說很難出bug,因為基本沒改邏輯

清理機制也沿用以前的,不會有額外心智負擔

rocketMq 延遲訊息介紹

在rocketmq的訊息體系中,很重要的乙個訊息體系是延遲訊息,以前需要定時去實現的任務現在有rocketmq自身幫忙解決了,這篇文章主要是講解清楚延遲訊息的實現細節,延遲訊息的是細節,延遲訊息的實現細節,重要的事情說3遍。1 訊息先寫入commitlog檔案 2 消費執行緒將資料儲存以schedu...

RocketMQ 9 訊息堆積與消費延遲

訊息處理流程中,如果consumer的消費速度跟不上producer的傳送速度,mq中未處理的訊息會越來越多 進的多出的少 這部分訊息就被稱為堆積訊息。訊息出現堆積進而會造成訊息的消費延遲。以下場景需要重點關注訊息堆積和消費延遲問題 consumer使用長輪詢pull模式消費訊息時,分為以下兩個階段...

rocketmq實現順序消費

訊息有序指的是可以按照訊息的傳送順序來消費。rocketmq可以嚴格的保證訊息有序。但這個順序,不是全域性順序,只是分割槽 queue 順序。要全域性順序只能乙個分割槽。之所以出現你這個場景看起來不是順序的,是因為傳送訊息的時候,訊息傳送預設是會採用輪詢的方式傳送到不通的queue 分割槽 如圖 而...