(1)生产者发送消息采用异步回调发送,如果发送失败,我们可以通过回调获取消息信息,可以选择记录日志或者重试,同时生产者也可以设置消息重试机制。
(2)采用broker的复制机制保证消息在broker中不丢失:开启生产者消息确认机制为all,这样的话,当生产者发送消息到了分区之后, 不仅仅只在leader分区保存确认,在follwer分区也会保存确认,只有当所有 的副本都保存确认以后才算是成功发送了消息。
(3)kafka默认采用定期自动提交消费偏移量offset,这样可能会导致消息丢失和消息被重复消费,所以关闭自动提交消费偏移量,当消息消费成功后自己手动提交,这样就能保证消息不丢失和消息不重复消费。
标签:消费,重复,Kafka,发送,生产者,消息,丢失 From: https://www.cnblogs.com/yhb-blogs/p/17720217.html