怎么做网站的软文推广,成都微网站公司,用vs2008做网站视频教程,计算机网站建设实验总结文章目录 1. 应答机制2. 等级03. 等级14. 等级all5. 设置等级6. ISR 1. 应答机制
异步发送的效率高#xff0c;但是不安全#xff0c;同步发送安全#xff0c;但是效率低。
无论哪一种#xff0c;有一个关键的步骤叫做回调#xff0c;也就是ACKS应答机制。
其中ACKS也分… 文章目录 1. 应答机制2. 等级03. 等级14. 等级all5. 设置等级6. ISR 1. 应答机制
异步发送的效率高但是不安全同步发送安全但是效率低。
无论哪一种有一个关键的步骤叫做回调也就是ACKS应答机制。
其中ACKS也分为3个等级。默认等级是all。
等级效率安全all-1效率低安全性高1效率中安全性中0效率高安全性低
2. 等级0
生产者发送消息到Kafka集群。消息进入网络发送队列。生产者立即返回认为消息已发送不等待任何Broker的确认。 3. 等级1
生产者发送消息到Kafka集群。Leader分区接收消息将消息写入本地日志。Leader分区将消息同步到磁盘如果配置了日志刷新。Leader分区返回确认ACK给生产者。生产者收到ACK继续处理下一条消息。 4. 等级all
生产者发送消息到Kafka集群。Leader分区接收消息将消息写入本地日志。Leader分区将消息同步到磁盘如果配置了日志刷新。Leader分区将消息发送给所有同步副本ISR。每个同步副本Follower将消息写入本地日志并返回确认给Leader。Leader分区收到所有同步副本的确认后返回ACK给生产者。生产者收到ACK继续处理下一条消息。 5. 设置等级 //创建producerHashMapString, Object config new HashMap();config.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, localhost:19092);config.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());config.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());//配置acks等级config.put(ProducerConfig.ACKS_CONFIG, -1);KafkaProducerString, String producer new KafkaProducerString, String(config);6. ISR
ISR的定义
成员ISR包括Leader和所有与Leader保持同步的Follower分区。保持同步的标准是Follower分区的日志不落后于Leader分区超过指定的时间由replica.lag.time.max.ms配置。目的确保在Leader发生故障时可以迅速从ISR中选举一个新的Leader从而保证分区的高可用性。
ISR的动态调整
Kafka会动态调整ISR的成员。如果一个Follower分区落后于Leader超过一定的时间Kafka会将其从ISR中移除。当该Follower分区重新追上Leader并满足同步标准时Kafka会将其重新加入ISR。