关于Apache Pulsar推送模式及消息通知机制的技术问询
Apache Pulsar 推送模型与消息投递机制解析
推送模型下的通知行为:
当Apache Pulsar启用推送(push)模型时,生产者发送的消息抵达Broker后,Broker会主动向已完成订阅的消费者触发消息推送——相当于给消费者发送了“有新消息可接收”的通知,无需消费者主动发起拉取请求。只要消费者处于可用状态(连接正常、未触发流控限制),Broker就会直接把新消息投递过去。消息投递的触发方式:
Apache Pulsar同时支持推送(Push)和拉取(Pull)两种消息投递模式:- 推送模式:Broker主动监控订阅队列,有新消息时直接推送给已订阅的消费者,是默认的工作模式;
- 拉取模式:消费者需要主动调用相关方法(比如
receive())向Broker发起请求,Broker才会返回对应的消息。
另外需要注意,Pulsar的推送模式会配合流控机制(比如通过consumerReceiveQueueSize配置消费者的消息缓存上限),避免消费者因消息投递过快而无法及时处理。
内容的提问来源于stack exchange,提问作者ilavarasan M
相关产品推荐
相关产品推荐

