典型的消息队列Kafka集群包含:
Producer:通过push模式向消息队列Kafka Broker发送消息,它们可能是网页访问、服务日志,也可能是CPU或内存等系统信息
Kafka Broker:Kafka的服务器,存储消息,支持水平扩展,Broker节点越多,集群吞吐率越高
Consumer Group:通过pull模式从Kafka Broker订阅并消费消息
Zookeeper:管理集群的配置,选举leader,在Consumer Group发生变化时进行负载均衡
Pub/Sub模型
Pub/Sub(发布/订阅)模型中:
Consumer Group与Topic是N:N关系
同一个topic的一条消息只能被同一个Consumer Group内的任意一个Consumer消费,但多个Consumer Group可以同时消费这个消息