kafka 关键词
1 | Kafka部分名词解释如下: |
kafka副本分配算法
1 | 副本分配算法如下:(mod表示余数,例如: 3 mod 2 = 1) |
kafka存储过程
1 | Kafka运行时很少有大量读磁盘的操作,主要是定期批量写磁盘操作,因此操作磁盘很高效.这跟Kafka文件存储中读写message的设计是息息相关的.Kafka中读写message有如下特点: |
kafka Partition Recovery机制
1 | 每个Partition会在磁盘记录一个RecoveryPoint, 记录已经flush到磁盘的最大offset。当broker fail 重启时,会进行loadLogs。 首先会读取该Partition的RecoveryPoint,找到包含RecoveryPoint的segment及以后的segment, 这些segment就是可能没有 完全flush到磁盘segments。然后调用segment的recover,重新读取各个segment的msg,并重建索引 |
kafka Partition Replica同步机制
1 | 1.Partition的多个replica中一个为Leader,其余为follower |
数据可靠性保证
1 | 当Producer向Leader发送数据时,可以通过acks参数设置数据可靠性的级别 |
数据一致性保证
1 | 一致性定义:若某条消息对Consumer可见,那么即使Leader宕机了,在新Leader上数据依然可以被读到 |