通常,消费者之间的消息顺序是无法保证的,因为这违背了 CAP 定理。 这个定理的一致性可以通过 Actors 的理论来确定,也就是说,当我们保留接收消息的事实及其顺序时 - 仅针对特定的 Consumer。 Actor 本身是一个实体,它接收消息,以原子方式处理它,并将消息发送给下一个 Acto ...
通常,消费者之间的消息顺序是无法保证的,因为这违背了 CAP 定理。 这个定理的一致性可以通过 Actors 的理论来确定,也就是说,当我们保留接收消息的事实及其顺序时 - 仅针对特定的 Consumer。 Actor 本身是一个实体,它接收消息,以原子方式处理它,并将消息发送给下一个 Acto ...
I am trying to achieve exactly once functionality but getting KafkaException with message as "org.apache.kafka.common.KafkaException: TransactionalId ...
我正在寻找一种将生产者与事务一起使用的方法,使用 fs2,但是当前的 TransactionalProducer 似乎适合端到端工作流的场景,这意味着消费-过程-生产。 但是,我们想在我们只是向 kafka 生成消息的上下文中使用它。 有没有一种已知的方法可以用 fs2-kafka 实现这一目标? ...
我正在尝试将事件分批发送到 Kafka(比如说一批 10 个事件)以维护事务保证。 但我只能成功地将第一批事件发送到 Kafka。 所有后续批次都失败,原因是 KafkaError{code=_STATE,val=-172,str="Operation not valid in state Read ...
我需要获得精确一次的语义,所以我使用 Kafka Transactional API。我正在尝试了解如何有效地使用 Producer。 正如我在一些文章中读到的那样,由于其缓冲机制,每个应用程序实例(在一个 TCP 连接内)仅使用一个生产者是一种更优化的方式。 另一方面,当我为单个消息调用 prod ...
关于链接 - Kafka 事务回滚不适用于 RecordTooLargeException 的 3 个主题在EDIT3 上我有以下问题如何在使用 AfterRollbackProcessor 时将错误发送到 DB 并同时发送到 DLQ 我向 DefaultAfterRollbackProcessor ...
我向 3 个主题发布 3 条消息 - 如果出现异常则发布 - 所有消息都将回滚。 但就我而言,当我为第三个主题模拟以下异常时,它并没有发生。 org.apache.kafka.common.errors。 RecordTooLargeException :消息为 117440606 字节在向第三 ...
我们如何确保 Kafka 在读取过程中的语义完全一次。 read 表示我们正在从 Kafka 主题中读取并进行一些处理,然后我们正在尝试提交偏移量。 假设,我们处理了消息但无法提交,并且在提交之前进程崩溃了。 重新启动后,再次尝试使用相同的消息。 那么如何处理这种情况呢? 这可以用 Kafka ...
在 kafka 侦听器容器内生成消息时出现此异常。 我的听众看起来像这样 我的配置看起来像这样 我知道 Kafka 何时抛出 ProducerFencedException,但我想在这里找出具有相同 transaction.id 的第二个生产者在哪里。 如果我在 Kafka 模板中设置唯一的事务前 ...
我有一个 Kafka 包装器库,它仅在生产端使用事务。 图书馆不覆盖消费者。 生产者发布到多个主题。 目标是实现事务性。 所以生产应该要么成功,这意味着应该在每个主题中写入一次消息的副本,或者失败,这意味着消息没有写入任何主题。 该库的用户是在 Kubernetes pod 上运行的应用程序。 因 ...
我们使用 Akka Stream Kafka 来生产和消费消息,并使用 Strimzi Kafka 集群。 以下是重要的版本: 重构消息后,消费者停止工作。 我们确实在主题中有消息,但消费者只是无休止地等待。 这是日志片段: 还有几点: 模式注册表配置正确且良好(否则生产者将无法工作)。 主题(和 ...
Kafka中的事务是什么意思? 当然我知道普通的sql事务: A transaction is a sequence of operations performed (using one or more SQL statements) on a database as a single logic ...
我在应用程序中有事务性和正常的 Producer,它们正在写入主题 kafka-topic,如下所示。 事务性 Kafka Producer 的配置 普通的 Producer 配置是相同的,只是没有添加 ProducerConfig.CLIENT_ID_CONFIG 和 ProducerCon ...
因此,据我从Apache Kafka 中的事务中了解到, read_committed消费者不会返回作为正在进行的事务的一部分的消息。 所以,我猜,消费者将可以选择将其偏移量提交到那些正在进行的事务消息(例如读取非事务性消息)或选择在遇到的事务提交/中止之前不进一步推进。 我只是假设它会被允许(由 ...
我试图了解 Kafka 的事务性 API。 此链接定义原子读-处理-写周期如下: 首先,让我们考虑一下原子读-进程-写周期的含义。 简而言之,这意味着如果应用程序在某个主题分区 tp0 的偏移量 X 处消费了消息 A,并在对消息 A 进行了一些处理使得 B = F(A) 之后将消息 B 写入主题分 ...