gpt4 book ai didi

node.js - 使用 node-rdkafka 重新连接到 Kafka 缓慢且不一致

转载 作者:搜寻专家 更新时间:2023-10-31 22:54:00 29 4
gpt4 key购买 nike

我在一些本地 docker 容器中运行了 kafka 和 zookeeper。

我有一个 node.js 代码库,它使用 node-rdkafka 作为消费者连接到 kafka。我们将此代码库称为“消费者”

消费者使用此处显示的代码连接到 kafka: https://github.com/Blizzard/node-rdkafka/blob/master/examples/consumer-flow.md

尝试连接到现有的 Kafka 实例时,我得到以下输出:

consumer ready.{"name":"rdkafka#consumer-1"}

但是我的接收和处理消息的代码永远不会触发,或者在开始触发之前需要几分钟(有时显然是 5 到 10 分钟)。

为了确保生成消息,我使用kafka 附带的脚本kafka-console-consumer.sh 来观察消息流。果然,大量数据即将到来。

好像有时连接失败,有时连接很长时间。

这段时间的kafka日志如下:

kafka_1      | [2017-04-27 20:55:37,963] INFO [Group Metadata Manager on Broker 1001]: Removed 0 expired offsets in 1 milliseconds. (kafka.coordinator.GroupMetadataManager)
kafka_1 | [2017-04-27 20:55:48,576] WARN Attempting to send response via channel for which there is no open connection, connection id 1 (kafka.network.Processor)
kafka_1 | [2017-04-27 20:55:53,185] INFO [GroupCoordinator 1001]: Preparing to restabilize group video-caption-consumer with old generation 24 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 20:56:18,577] INFO [GroupCoordinator 1001]: Stabilized group video-caption-consumer generation 25 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 20:56:18,626] INFO [GroupCoordinator 1001]: Assignment received from leader for group video-caption-consumer for generation 25 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 20:58:24,951] INFO [GroupCoordinator 1001]: Preparing to restabilize group video-caption-consumer with old generation 25 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 20:58:51,643] INFO [GroupCoordinator 1001]: Stabilized group video-caption-consumer generation 26 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 20:58:51,648] INFO [GroupCoordinator 1001]: Assignment received from leader for group video-caption-consumer for generation 26 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 21:01:14,231] INFO [GroupCoordinator 1001]: Preparing to restabilize group video-caption-consumer with old generation 26 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 21:01:16,414] INFO [GroupCoordinator 1001]: Stabilized group video-caption-consumer generation 27 (kafka.coordinator.GroupCoordinator)
kafka_1 | [2017-04-27 21:01:16,419] INFO [GroupCoordinator 1001]: Assignment received from leader for group video-caption-consumer for generation 27 (kafka.coordinator.GroupCoordinator)

它只是无限地重复该模式。

想法?

就其值(value)而言,我也使用了一段时间的 kakfa-node 模块;有类似的问题,但我不能确定是否是完全相同的问题。

最佳答案

只要没有人有好的答案,我就分享我的解决方案...

最终我停止在 docker 容器中运行 kafka,这似乎是原因所在。相反,我按照 The Quick Start Guide 的方式运行它。 .

这解决了我的问题,所以问题可能根本不是 node-rdkafka 的错。事实上,我们已经在生产环境中成功运行 node-rdkafka 近一年了,没有任何问题。

最后我没有硬性的、令人满意的答案,只有怀疑和很多试图让kafka在容器中工作的痛苦记忆。当我最终放弃码头化的卡夫卡时,我松了一口气。似乎只有我的一些同事分享了我的问题。

关于node.js - 使用 node-rdkafka 重新连接到 Kafka 缓慢且不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43668780/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com