【问题标题】:Has kafka implemented the future of idempotent producerkafka 是否实现了幂等生产者的未来
【发布时间】:2016-04-11 14:34:58
【问题描述】:

当我在扫描kafka的document时,看到一篇关于idempotent producer的文章,这是一个非常酷的未来。但是,我不确定这是否已在 0.9 版中实现,或者只是对未来版本的提议。有人知道吗?

在第一个文档部分 4.6 消息传递语义

对于发布者来说,这些并不是最强的语义。 尽管我们无法确定在网络的情况下发生了什么 错误,有可能允许生产者生成一种 使重试产生请求幂等的“主键”。这 功能对于复制系统而言并非微不足道,因为它当然是 甚至(或尤其是)在服务器故障的情况下也必须工作。和 此功能足以让生产者重试,直到它 接收成功提交消息的确认 点我们会保证消息已经发布了一次。 我们希望在未来的 Kafka 版本中添加此功能

这看起来很模糊,是不是暗示还没有实现?

【问题讨论】:

  • 我也在试图弄清楚这是否是一项功能。你知道吗,或者你有解决办法吗?
  • 该功能尚未实现。有关更多信息,请参阅JIRA ticket。似乎现在的重点是exactly-once semantics,所以这很可能会作为该计划的一部分实施。
  • @TianxiangXiong,Exactly-once 语义是实现幂等性的一种方式。我们可以将幂等运算符理解为一遍又一遍地调用该方法,它实际上与调用一个方法相同。

标签: message-queue apache-kafka


【解决方案1】:

幂等生产者终于在0.11.0.0版本实现 https://issues.apache.org/jira/browse/KAFKA-4817

阅读这篇文章,了解 Kafka 如何提供“exactly once”保证: https://www.confluent.io/blog/exactly-once-semantics-are-possible-heres-how-apache-kafka-does-it/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-30
    • 2020-02-09
    • 2021-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    相关资源
    最近更新 更多