恕我直言,我只是个新手 Kafka
. 目前我正在阅读 Kafka
关于传统的消息系统和 Active MQ
以及 Kafka
.
正如文件所说。
对于传统的消息系统。它们不能扩展消息处理。自从
publish-subscribe允许您将数据广播到多个进程,但无法扩展处理,因为每条消息都会发送到每个订户。
我觉得这对我来说很有意义。
但是对于 Kafka
. 文件上说 Kafka
即使在发布-订阅模式下也可以扩展消息处理(如果我错了,请纠正我。谢谢。)
Kafka的消费群体概念概括了这两个概念。与队列一样,使用者组允许您将处理划分为一组进程(使用者组的成员)。与publish-subscribe一样,kafka允许您向多个消费群体广播消息。
kafka模型的优点是,每个主题都具有这两个属性,它可以扩展处理,而且是多用户的,不需要选择一个或另一个。
所以我的问题是怎么做 Kafka
成功?我的意思是在发布-订阅模式下扩展处理。谢谢。
1条答案
按热度按时间jmo0nnb31#
kafka中支持可扩展的pub/sub的主要独特功能包括:
对单个主题进行分区,并将活动分区分布到集群中的多个代理上,以利用更多的机器、磁盘和缓存内存。生产者和消费者通常连接到集群中的许多或所有节点,而不仅仅是给定主题/队列的单个主节点。
将所有消息存储在顺序提交日志中,并且在使用时不删除它们。这将导致更连续的读写操作,使代理不必处理跟踪消息的不同副本、删除单个消息、处理碎片、跟踪哪个消费者已确认消费了哪些消息。
支持对单个使用者和使用者组进行智能并行处理,使每个并行消息流都可以来自#1中提到的分布式分区,同时将偏移管理和分区分配逻辑卸载到客户端本身。Kafka与更多的消费者一起扩展,因为消费者做了一些工作(不像大多数其他的酒吧/分店经纪人,大部分工作是在经纪人那里完成的)