V-xin:ruyuanhadeng获得600+页原创精品文章汇总PDF
目录
- 1、写在前面
- 2、如何保证宕机时数据不丢失?
- 3、多副本冗余的高可用机制
- 4、多副本之间数据如何同步?
- 5、ISR到底指的什么东西?
- 6、acks参数的含义?
- 7、最后的思考
1、写在前面
面试大厂时,一旦简历上写了Kafka,几乎必然会被问到一个问题:说说acks参数对消息持久化的影响?
这个acks参数在kafka的使用中,是非常核心以及关键的一个参数,决定了很多东西。
所以无论是为了面试还是实际项目使用,大家都值得看一下这篇文章对Kafka的acks参数的分析,以及背后的原理。
2、如何保证宕机的时候数据不丢失?
如果要想理解这个acks参数的含义,首先就得搞明白kafka的高可用架构原理。
比如下面的图里就是表明了对于每一个Topic,我们都可以设置他包含几个Partition,每个Partition负责存储这个Topic一部分的数据。
然后Kafka的Broker集群中,每台机器上都存储了一些Partition,也就存放了Topic的一部分数据,这样就实现了Topic的数据分布式存储在一个Broker集群上。