rocketmq push
时间: 2023-09-30 22:06:15 浏览: 99
rocketmq-starter
5星 · 资源好评率100%
RocketMQ的push模式是指服务端主动将消息推送给消费者客户端。在RocketMQ中,对于每个指定的topic,默认的队列数量是4个。当producer发送消息到topic时,会随机选择一个队列来投递消息,队列序号是0~3。\[2\]
推送的实现方式有两种,一种是采用回调的形式,服务端有事件源后,启动一个线程,遍历所有客户端列表,依次调用其钩子函数。这种方式需要服务端缓存所有客户端列表,并且每次事件源发布都需要调用一次,对资源的浪费较大。另一种方式是利用长轮询的拉来模拟推,实现类似于推的效果。RocketMQ采用的就是这种方式。\[3\]
在push模式下,RocketMQ的源码实现涉及到消息的投递、消费者的注册和消息的推送等过程。具体的源码分析需要深入研究RocketMQ的源码。
#### 引用[.reference_title]
- *1* *3* [RocketMQ 消费端PUSH 模式详解](https://blog.csdn.net/bingfengxiyang703/article/details/103904900)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [RocketMq 消费消息的两种方式 pull 和 push](https://blog.csdn.net/zhangcongyi420/article/details/90548393)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文