Akhq UI 显示 jdbc 接收器连接器的消费者延迟始终为 1,即使所有消息都已被消费
Akhq UI shows Consumer lag always 1 for jdbc sink connector even though all messages are consumed
我们将 Kafka 流(2.5.0 jar)与 java 应用程序(具有恰好一次语义)和 Jdbc 接收器连接器(UPSERT 模式)一起用于将数据写入数据库。
流量:-
Java Kafka Stream 应用 -------- > Db 接收器连接器。
akhq 用户界面始终显示 1 的滞后,即使所有消息都是有效的。所有的消息都被消费了。是因为连接器没有“isolation.level”作为“read_committed”,当前是“read_uncommited”。延迟如下图所示。我也见过
与Kafka相关的错误https://issues.apache.org/jira/browse/KAFKA-10683,是否与此有关。
Sink connector consumer lag
迟到的问题,但我不知道有人在 Whosebug 上问关于 akhq 的问题。
这是Kafka Transaction的一个行为。
Kafka 事务处理的提交消息永远不会被 Kafka 消费者读取。
消费者只是不知道最后一个偏移量是一个提交。
因此,由于 Akhq 是一个简单的 Kafka 消费者,它总是会看到 1 的滞后。
每个使用 Kafka 事务的应用程序都会有这个。
我们将 Kafka 流(2.5.0 jar)与 java 应用程序(具有恰好一次语义)和 Jdbc 接收器连接器(UPSERT 模式)一起用于将数据写入数据库。
流量:-
Java Kafka Stream 应用 -------- > Db 接收器连接器。
akhq 用户界面始终显示 1 的滞后,即使所有消息都是有效的。所有的消息都被消费了。是因为连接器没有“isolation.level”作为“read_committed”,当前是“read_uncommited”。延迟如下图所示。我也见过 与Kafka相关的错误https://issues.apache.org/jira/browse/KAFKA-10683,是否与此有关。
Sink connector consumer lag
迟到的问题,但我不知道有人在 Whosebug 上问关于 akhq 的问题。
这是Kafka Transaction的一个行为。 Kafka 事务处理的提交消息永远不会被 Kafka 消费者读取。 消费者只是不知道最后一个偏移量是一个提交。 因此,由于 Akhq 是一个简单的 Kafka 消费者,它总是会看到 1 的滞后。
每个使用 Kafka 事务的应用程序都会有这个。