-
消息中間件:Rocket順序消息之最佳實踐
順序消息 順序消息缺陷 發送順序消息無法利用集群Fail Over特性消費,順序消息的并行度依賴于隊列數量,存在隊列熱點問題,個別隊列由于哈希不均導致消息過多,消費速度跟不上,產生消息堆積問題遇到消息失敗的消息,無法跳過,當前隊列消費暫停。原理 produce…
-
Netty協議-Rocket MQ之NettyRemotingClient/Server
RocketMQ性能強勁依賴于Netty通訊協議和特定的通訊協議。通信流程NettyRemotingAbstract類的內部有一個NettyServerHandler內部類,該類中封裝了客戶端與服務端交互的基礎代碼。processMessageReceived根據cmd類型處理msg信息@ChannelHandler.Sharableclass Net…
-
數據處理選kafka還是RocketMQ?
場景描述:北京有很多電動車,這些車都會定時地向一個服務器發送狀態信息,這些信息可能包括:車的id、發送 時間、車的位置(經緯度)、車的速度、剩余電量等等。有了這些信息我們可以做很多事情,比如:計算車 的軌跡、出租車的運行規律、電量維持時間等等。一…
-
聊聊carrera的RocketMQProduceOffsetFetcher
序 本文主要研究一下carrera的RocketMQProduceOffsetFetcherRocketMQProduceOffsetFetcher DDMQ/carrera-monitor/src/main/java/com/xiaojukeji/carrera/monitor/lag/offset/RocketMQProduceOffsetFetcher.javapublic class RocketMQProduceOffsetFetcher {pri…
-
再見RocketMQ!全新一代消息中間件,帶可視化管理
最近很火的消息中間件Pulsar,本想學習下,發現網上很多都是介紹性能和對比Kafka的文章,實踐的文章很少!于是對著官方文檔實踐了一波,寫下了這篇文章,估計是國內第一篇Pulsar實戰文章了,希望對大家有所幫助!Pulsar簡介 Pulsar是一個用于服務端到服務端的消…
-
聊聊RocketMQCanalConnector的getFlatList
序本文主要研究一下RocketMQCanalConnector的getFlatListgetFlatListcanal-1.1.4/client/src/main/java/com/alibaba/otter/canal/client/rocketmq/RocketMQCanalConnector.javapublic class RocketMQCanalConnector implements CanalMQConnector {private stat…
-
RocketMQ實戰:一個新的消費組初次啟動時從何處開始消費呢?
溫馨提示:本文首發與中間件興趣圈。本文首先重現網友提出的問題,然后對其進行原理分析,然后驗證猜想,并給出實戰建議。拋出問題一個新的消費組訂閱一個已存在的Topic主題時,消費組是從該Topic的哪條消息開始消費呢?首先翻閱DefaultMQPushConsumer的API時,…
-
RocketMQ的三種常用生產消費方式(順序、廣播、定時)以及順序消費源碼探究
順序、廣播、定時任務前插在進行常用的三種消息類型例子展示的時候,我們先來說一說RocketMQ的幾個重要概念:PullConsumer與PushConsumer:主要區別在于Pull與Push的區別。對于PullConsumer,消費者會主動從broker中拉取消息進行消費。而對于PushConsumer,會封…
-
Kafka,RabbitMQ,ZeroMQ,RocketMQ,ActiveMQ之間的差異?
本文將從,Kafka、RabbitMQ、ZeroMQ、RocketMQ、ActiveMQ 17 個方面綜合對比作為消息隊列使用時的差異。一、資料文檔Kafka:中。有kafka作者自己寫的書,網上資料也有一些。 rabbitmq:多。有一些不錯的書,網上資料多。 zeromq:少。沒有專門寫zeromq的書,網…
-
MQ 消息中間件 Kafka,RocketMQ等與 MMAP、PageCache
一般的IO調用首先來看一下一般的IO調用。在傳統的文件IO操作中,我們都是調用操作系統提供的底層標準IO系統調用函數 read()、write() ,此時調用此函數的進程(在JAVA中即java進程)由當前的用戶態切換到內核態,然后OS的內核代碼負責將相應的文件數據讀取到內…
