一、pull模式
- 根据consumer的消费能力进行数据拉取,可以控制速率
- 可以批量拉取、也可以单条拉取
- 可以设置不同的提交方式,实现不同的传输语义
缺点:
如果kafka没有数据,会导致consumer空循环,消耗资源
解决:
通过参数设置,consumer拉取数据为空或者没有达到一定数量时进行阻塞
二、push模式
不会导致consumer循环等待
缺点:
速率固定、忽略了consumer的消费能力,可能导致拒绝服务或者网络拥塞等情况
三、额外补充
Kafka最初考虑的问题是,customer应该从brokes拉取消息还是brokers将消息推送到consumer,也就是pull还push。
Kafka遵循了一种大部分消息系统共同的传统的设计:producer将消息推送到broker,consumer从broker拉取消息。文章来源:https://www.toymoban.com/news/detail-601117.html
一些消息系统比如Scribe和Apache Flume采用了push模式,将消息推送到下游的consu文章来源地址https://www.toymoban.com/news/detail-601117.html
到了这里,关于95、Kafka是pull?push?优劣势分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!