Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 卡夫卡只有一次压缩_Apache Kafka_Apache Kafka Streams_Exactly Once - Fatal编程技术网

Apache kafka 卡夫卡只有一次压缩

Apache kafka 卡夫卡只有一次压缩,apache-kafka,apache-kafka-streams,exactly-once,Apache Kafka,Apache Kafka Streams,Exactly Once,我想我理解幂等性意味着“每条消息在日志中写一次”,但当谈到EOS(确切地说是一次交付语义)时,消费者也扮演了一个角色,并进入到端到端的保证中 因此,如前所述(例如),对于“端到端精确一次语义”,幂等性和事务都是必需的 然而,卡夫卡说: 由于数据以压缩格式存储在代理上,因此有效的获取 偏移量是压缩的消息边界。因此,对于压缩 数据,消耗的偏移量将一次前进一条压缩消息 时间如果发生以下情况,则可能会产生重复的副作用: 消费者的失败 问题: 即使生产者是幂等的,消费者是Kafka中的事务性的(例如Ka

我想我理解幂等性意味着“每条消息在日志中写一次”,但当谈到EOS(确切地说是一次交付语义)时,消费者也扮演了一个角色,并进入到端到端的保证中

因此,如前所述(例如),对于“端到端精确一次语义”,幂等性和事务都是必需的

然而,卡夫卡说:

由于数据以压缩格式存储在代理上,因此有效的获取 偏移量是压缩的消息边界。因此,对于压缩 数据,消耗的偏移量将一次前进一条压缩消息 时间如果发生以下情况,则可能会产生重复的副作用: 消费者的失败

问题:

  • 即使生产者是幂等的,消费者是Kafka中的事务性的(例如Kafka流),我也可能会看到重复的,因为偏移量在压缩消息边界上是高级的。考虑在压缩消息的边界处处理单个消息:偏移量不超前,因此如果消费者失败,我将看到重复。对吗

似乎启用压缩可能会使EOS的工作无效。我在讨论EOS的文章中没有提到这一点。

好问题。博客中不是说每个消费者的偏移量存储为内部/系统主题吗?是的,但这会改变什么吗?