IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    kafka异步发送也存在消息重复的可能

    hongjiang发表于 2015-06-01 19:05:20
    love 0

    遇到一个业务上的情况,在压力很大的情况下,某个topic的消息出现了小部分的冗余,发送端采用async模式。不确定kafka的async模式发送消息是否也会重试,文档里提到async模式发送增加了丢消息的可能,不知道message.send.max.retries参数是否也会起作用,群里讨论了一下,晚上跟踪了一下代码发现也是有 retry 的。

    在 kafka.producer.async.DefaultEventHandler的handle方法里

    while (remainingRetries > 0 && outstandingProduceRequests.size > 0) {
      ......
    }
    

    看来不论同步还是异步发送,消息重复的可能都是存在的。



沪ICP备19023445号-2号
友情链接