kafka
kafka的高可用机制有了解过嘛
kafka的服务器端由被称为Broker的服务进程构成,即一个kafka集群由多个Broker组成这样如果集群中某一台机器宕机,其他机器上的Broker也依然能够对外提供服务。这其实就是Kafka提供高可用的手段之一。 ❒ 分区备份机制 ✔ 某一个topic中有三个分区P0、P1、P2 ✔ 一个topic有多个分区,每个分区有多个副本,其中有一个leader,其余的是follower,副 ✔ 本存储在不同的broker中所有的分区副本的内容是都是相同的,如果leader发生故障时,会自动将其中一个follower提升为leader ✔ ISR(in-sync replica)需要同步复制保存的follower ✔ 如果leader失效后,需要选出新的leader,选举的原则如下 ✔ 第一:选举时优先从ISR中选定,因为这个列表中follower的数据是与leader同步的 ✔ 第二:如果ISR列表中的follower都不行了,就只能从其他follower中选取
❒ 可以从两个层面回答,第一个是集群,第二个是复制机制 ✔ 一个kafka集群由多个broker实例组成,即使某一台宕机,也不耽误其他broker继续对外提供服务 ✔ 一个topic有多个分区,每个分区有多个副本,有一个leader,其余的是follower,副本存储在不同的broker中所有的分区副本的内容是都是相同的,如果leader发生故障时,会自动将其中一个follower提升为leader,保证了系统的容错性、高可用性