「Kafka应用」名词概念解释
Kafka名词概念解释
Producer(生产者)
生产者,发送消息的一方。生产者负责创建消息,然后将其投递到Kafka中。
Consumer(消费者)
消费者,也就是接收消息的一方。消费者连接到Kafka上并接收消息,进而进行相应的业务逻辑处理。
Group
每一个消费者都属于一个消费者组,当有多个消费者绑定同一个消费者组时,我们将这些消费者看做同一个组内的成员。消费者进行消费数据时,必须绑定一个消费者组。
Broker
可以理解为一个Kafka服务节点,大多情况下可以将其看做一台Kafka服务器,多个broker组成一个Kafka集群,而同一个主题下的多个分区,可以坐落于不同的broker中。
Topic (主题)
Kafka中每条消息都属于某一个主题,而不论生产者还是消费者在进行数据的投放/消费时,都必须指定主题。一个主题下应存放同一类数据。
Partition (分区)
分区属于主题下的概念,主题下的数据根据分区进行分割,一个主题至少拥有一个分区,每个分区中存放的数据内容不一样,也就是说同一条消息只会存在于一个分区中。而且每个分区维护各自的偏移量,所以分区的有序性只能保证在单个分区内。
副本
每个分区至少拥有一个副本,副本又分为「leader」和「follower」,其中数据的存取只会在leader上进行,follower只负责从leader中同步数据,以备在leader发生故障时,从follower中选举中一个新的leader。同一个分区下所有的副本中的数据是一样的。(在同步完成的情况下)
AR (Assigned Replicas )
分区中所有的副本。
ISR (In-Sync Replicas)
与leader副本的滞后性保持一定程度(可接受范围内)的follower副本。新的leader就是在这里产生。当副本同步速度降低时,会将其放入OSR中。
OSR (Out-Sync Replicas)
与leader副本的滞后过多的副本。当副本同步速度追上来时,会重新纳入到ISR中。
HW (High Watermark)
高水位,消费者只能拉取到HW之前位置的数据。
LEO (Log End Offset)
标识日志文件中下一条数据的offset。
图示
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: