rocketmq源码-关于消费者push模式和pull模式的对比

本文深入探讨RocketMQ消费者的Push和Pull模式。从源码角度出发,揭示两者实则是消费者主动从Broker拉取消息,而非简单的推送。Push模式下,消息回调业务系统中的messageListener,可顺序或并行消费;Pull模式则将消息存入内存队列,消费者按需消费。理解服务端与客户端的不同定义有助于澄清Push/Pull模式的误解。
摘要由CSDN通过智能技术生成

在rocketmq中,对于消费者而言,有两种模式,push和pull

我在没有看源码之前,看其他博客的时候,大部分的说法是:

mq中有两种获取消息的模式,一种是push,一种是pull;pull这种模式是消费者自己去拉取消息,根据自己的消费能力去拉取;而push模式是mq接收到消息之后,会推送给consumer

去翻了下官网的文档,确实也是这么说的
rocketmq官方文档

在这里插入图片描述

但是这里要看怎么去理解,根据看源码,如果我们在源码层面上去看,不管是pull模式还是push模式,都是consumer自己去broker拉取消息的,并且从源码上也可以证明(我这里并没有说服务端和客户端,而是consumer和broker)

因为站在broke的角度去考虑,broker为什么需要关心consumer是pull模式还是push模式呢?按照网上大部分的说法,对于push模式是broker自己推送消息给consumer,如果这个推断成立,那broker设计我认为是有问题的,因为对于broker而言,我只是去存储消息的,我不关心你是push还是pull,我只需要提供接口,让client来查询消息就可以了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值