kafka概念介绍

2018-11-05  本文已影响0人  刘子栋

1、broker

其实就是kafka的进程,代表kafka的一个节点

2、topic

其实就是对消息的分门别类进行存储,写的时候需要指定

3、生产者(producer)

使用kafka的生产者api进行消息的写操作到kafka集群中指定的topic中

4、消费者(consumer)

使用kafka的消费者api进行消息的读操作,需指定topic

5、分区(partition)

类似于传统关系型数据库的分库分表行为,主要是为了提高kafka的并行效率

6、副本(replication)

kafka的数据可靠性的保证,即使一个节点损坏,其他节点的副本同样支持访问,类似于hdfs 的多副本

7、kafka消息存储

在kafka指定数据存储目录里会根据分区数生产topic-分区id的文件夹,分区文件夹下主要关注.index文件和.log文件,index是记录了数据偏移量的稀疏表,log文件记录消息的具体内容

8、偏移量(offset)

类似于文件读取的位置信息,偏移量同样标识了消费者读取消息的位置信息,注意,每个消费者(消费组)的偏移量信息都是独立的。

9、消费语义

at most once: 最多消费一次 消费可能丢失 但是不会重复消费

at least once: 至少消费一次  消费不可能丢失 但是会重复消费

exactly once: 正好一次 消息不会丢失 也不会重复(这才是我们想要的)

  0.10.0.1 不支持不能实现 0.11官方已支持(但是实现程度需确认)

上一篇下一篇

猜你喜欢

热点阅读