kafka的ack机制
kafka的ack机制有3种:0,1,-1
这3种会围绕持久性和延时性来比较
0:最差的持久性,最低的延时性
producer不等待broker同步完成的确认,就继续发送下一批消息,当服务器发生故障时,就很可能发生数据丢失。
例如leader已经死亡,producer不知情,还会继续发送消息broker接收不到数据就会数据丢失
1:较好的持久性,较低的延时性
producer等待leader收到数据并得到确认,才发送下一批消息,也有可能丢失数据。
例如partition的leader死亡,follower还没有来的及复制
-1:最好的持久性,最差的延时性
producer等到follower收到数据并得到确认,才发送下一批消息,不会丢失数据。