kafka原理介绍
一、基本架构
broker:中间的kafka cluster,存储消息,是由多个server组成的集群。
topic:kafka给消息提供的分类方式。broker用来存储不同topic的消息数据。
producer:往broker中某个topic里面生产数据。
consumer:从broker中某个topic获取数据。
partition:partition 是物理上的概念,每个 topic 包含一个或多个 partition。kafka 分配的单位是 partition。
consumer:从 kafka 集群中消费消息的终端或服务。
replica:partition 的副本,保障 partition 的高可用。
leader:replica 中的一个角色, producer 和 consumer 只跟 leader 交互。
follower:replica 中的一个角色,从 leader 中复制数据。
controller:kafka 集群中的其中一个服务器,用来进行 leader election 以及 各种 failover。
二、基本原理
消息的发布(publish)称作 producer,将消息的订阅(subscribe)表述为 consumer,将中间的存储阵列称作 broker(代理),这样就可以大致描绘出这样一个场面: