博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kafka 架构及角色说明
阅读量:3937 次
发布时间:2019-05-23

本文共 1117 字,大约阅读时间需要 3 分钟。

架构

角色说明

Broker

一台 kafka 服务器就是一个 broker。一个集群由多个broker组成。一个 broker 可以容纳多个 topic;

broker 其实就是在 Hadoop 集群中的节点的概念.

broker 接收来自生产者的消息,为消息设置偏移量,并提交消息到磁盘保存。

broker 为消费者提供服务,对读取分区的请求作出响应,返回给消费者曾经生产者已经提交到磁盘上的消息.

Producer

消息生产者,就是向 kafka broker 发消息的客户端;

Consumer

消息消费者,从 kafka broker 读取消息的客户端;

Topic

Kaflca 的悄息通过 Topic 进行分类。 主题就好比数据库的表,或者文件系统里的文件夹。

生产者向 broker 发送消息的时候要指定一个 Topic, 消费者读取消息的时候也得指定一个具体的 Topic.

Partition

为了实现扩展性,一个非常大的 topic 可以分布到多个 broker(即服务器)上,一个topic 可以分为多个 partition.

消息以追加的方式写入 partition,后以先先出的顺序读取。

每个 partition 是一个有序的队列。partition 中的每条消息都会被分配一个有序的id(offset)。kafka 只保证按一个 partition 中的顺序将消息发给 consumer,不保证一个 topic 的整体(多个partition间)的顺序;

Consumer Group(同一个消费者组中的消费者,一个分区只能被一个消费者消费)

一个 Consumer Group 是多个 consumer 的组合, 作为一个整体存在.

这是 kafka 用来实现一个 topic 消息的广播(发给所有的 consumer )和 单播(发给任意一个 consumer)的手段。

同一个消费者组内的消费者读取消息的时候, 不会读取同一个分区内的消息.

但是组与组之间不受任何影响.

Offset

偏移量.

kafka 的存储文件都是按照 offset.kafka 来命名

用 offset 做名字的好处是方便查找。例如你想找位于 2049 的位置,只要找到2048.kafka 的文件即可。

当然the first offset就是00000000000.kafka。

关于 zookeeper

Kafka 使用 Zookeeper 保存集群的元数据信息和消费者信息, 来保证集群的可用性.

Kafka 集群中只能有一个 leader, 其他都是 follower, 这都需要 Zookeeper 来保证.

转载地址:http://ajuwi.baihongyu.com/

你可能感兴趣的文章
VC及esxi升级的必要性和步骤
查看>>
hp DL338服务器修改ilo管理地址
查看>>
vmware convert P2V 错误二三事
查看>>
让kali2020中的zsh有补完功能
查看>>
python解开压缩文件6位纯数字密码
查看>>
5620系列密码清除
查看>>
vncsever-centos&debian
查看>>
华为snmp模板
查看>>
华为wlan模板
查看>>
kvm&xen挂载镜像文件
查看>>
华为路由器配置NAT使内网用户通过外网IP地址方式访问内网服务器示例
查看>>
virt命令
查看>>
15个保障服务器安全的方法:
查看>>
在VMware Workstation 中部署VCSA6.5
查看>>
openstack&ceph
查看>>
ME60 双机热备 奇偶mac负载分担
查看>>
oracle11G安装en
查看>>
关于丢失或者损坏etc/fstab文件后
查看>>
VMware-ESXi-6.5 集成第三方驱动方法
查看>>
Oracle RAC on vSphere 安装手册v2
查看>>