1到底是考虑使用pull模式,还是push模式,kafka遵循了pull模式也就是靠靠消费者主动拉取

(produce将消息推送到broke,消费者主动拉取)

push:像Scripe和apache flume是使用push 模式。优点:broker能以最大速率发送消息。缺点:当broker推送的消息远大于消费者的速率时,消费者就会崩溃,当broker想避免消费者崩溃,采取远小于消费者速率推送消息,导致一次推送较小的消息造成浪费。

pull:消费者主动向broker拉取消息,适合不同消费速率的消费者。pull缺点:当broker没有消息推送时,导致消费者不断等待轮询。为了避免kafaka有个参数,可以以让消费者阻塞。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐