Kafka学习笔记(三)

Apache Kafka集群架构

这里写图片描述

上图即是Kafka集群架构概览图,以下将介绍图中的术语:

Broker:为了维持负载均衡,Kafka集群一般是由多个broker组成。Kafka broker是无状态的,所以他们使用zookeeper维系集群的状态。一个broker单位时间(1秒)内可以处理成百上千的读写操作,并且可以hold住TB级的数据量。brokers的leader选举由zookeeper消化。

Zookeeper:zookeeper在kafka集群中用来管理和协调多个broker的运作。zookeeper服务主要负责通知producer和consumer当前所有broker的状态(以及某个broker挂掉了这种情况)。一旦有某个broker挂掉了,zookeeper将会通知与此有关系的producer和consumer,将发布、拉取消息等任务分配到其余正常的broker。

Producer:producer负责发布消息给broker。当一个新的broker被启动,所有producer将自动发送一条消息到该broker。producer不需要等待broker回复确认信息即可发送消息到该broker。

Consumer:由于broker是无状态的,这意味着consumer必须通过partition的offset知道自己已经消化了多少消息。如果consumer确认了message的offset,意味着其已经消化了offset前面的message。consumer会通过异步拉取的形式从broker获取未消化的信息。consumer只需提供一个offset,就可以回退或跳过partition里的任何一个point。consumer的offset由zookeeper通知。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值