热门

最新

红包

立Flag

投票

同城

我的

发布
qq_39311377
爪哇手记
5 年前
trueqq_39311377

Kafka消息丢失及对应解决方案

1.生产者:
设置了acks=all,消息不会丢失,不满足条件会无限次重试。

2.kafka:
设置4个参数:
(1)给 topic 设置 replication.factor 参数:这个值必须大于 1,要求每个 partition 必须有至少 2 个副本。
(2)在 Kafka 服务端设置 min.insync.replicas 参数:这个值必须大于 1,这个是要求一个 leader 至少感知到有至少一个 follower 还跟自己保持联系,没掉队,这样才能确保 leader 挂了还有一个 follower 吧。
(3)在 producer 端设置 acks=all:这个是要求每条数据,必须是写入所有 replica 之后,才能认为是写成功了。
(4)在 producer 端设置 retries=MAX(值要足够大):这个是要求一旦写入失败,就无限重试,卡在这里了。

3.消费者:
kafka关闭自动提交offset,处理完之后手动提交offset,可能会有重复消费的情况,所以自己要保证幂等性。

CSDN App 扫码分享
分享
评论
1
打赏
  • 复制链接
  • 举报
下一条:
Java我我我 爱爱爱 你你你 我     爱 你 你我我我 爱爱爱 你 你  我 爱    你 你我我我 爱爱爱 你你你帮我new个对象吧!
立即登录