kafka 消息可靠性

1.消息发送机制

Kafka的ack机制。

当producer向leader发送数据时,可以通过request.required.acks参数来设置数据可靠性的级别:

   1(默认):这意味着producer在ISR中的leader已成功收到的数据并得到确认后发送下一条message。如果leader宕机了,则会丢失数据。

   0:这意味着producer无需等待来自broker的确认而继续发送下一批消息。这种情况下数据传输效率最高,但是数据可靠性确是最低的。

   -1:producer需要等待ISR中的所有follower都确认接收到数据后才算一次发送完成,可靠性最高。但是这样也不能保证数据不丢失,比如当ISR中只有leader时,这样就变成了acks=1的情况。

2. 消息存储可靠性

    副本机制

    

   日志查看:

/usr/local/kafka/kafka_2.11-2.4.0/bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files /tmp/kafka-logs/test-0/00000000000000000000.log --print-data-log

 

原文地址:https://www.cnblogs.com/newlangwen/p/12180823.html