当前位置: 首页 > 知识库问答 >
问题:

KafkaStreams无一例外地关闭

潘银龙
2023-03-14

我有四个Kafka流应用程序实例使用相同的应用程序id运行。所有输入主题都属于一个分区。为了实现可伸缩性,我通过一个具有多个分区的中间虚拟主题来传递它。我已经将< code>request.timeout.ms设置为4分钟。

Kafka 实例进入 ERROR 状态,而不会引发任何异常。很难弄清楚确切的问题是什么。有什么想法吗?

[INFO ] 2018-01-09 12:30:11.579 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] StreamThread:939 - stream-thread [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] Shutting down
[INFO ] 2018-01-09 12:30:11.579 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] StreamThread:888 - stream-thread [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] State transition from RUNNING to PENDING_SHUTDOWN.
[INFO ] 2018-01-09 12:30:11.595 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] KafkaProducer:972 - Closing the Kafka producer with timeoutMillis = 9223372036854775807 ms.
[INFO ] 2018-01-09 12:30:11.605 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] StreamThread:972 - stream-thread [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] Stream thread shutdown complete
[INFO ] 2018-01-09 12:30:11.605 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] StreamThread:888 - stream-thread [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] State transition from PENDING_SHUTDOWN to DEAD.
[WARN ] 2018-01-09 12:30:11.605 [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] KafkaStreams:343 - stream-client [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4] All stream threads have died. The Kafka Streams instance will be in an error state and should be closed.
[INFO ] 2018-01-09 12:30:11.605 [new-03-cb952917-bd06-4932-8c7e-62986126a5b4-StreamThread-1] KafkaStreams:268 - stream-client [app-new-03-cb952917-bd06-4932-8c7e-62986126a5b4] State transition from RUNNING to ERROR.

共有2个答案

丁正阳
2023-03-14

您可能还需要将default . production . exception . handler Kafka Streams属性设置为实现ProductionExceptionHandler的类,并且与默认类DefaultProductionExceptionHandler不同,它会在触发永久故障状态之前记录错误。

祁建业
2023-03-14

Thea asker在评论中分享了他的解决方案:

一旦我改变了消费者群id,它就工作了。

还值得注意的是,相关问题(可能有也可能没有相同的根本原因)已经在最近的版本中引入,现在看起来在Kafka版本2.5.1和2.6.0中也可以修复。

因此,今天正在经历这种情况的人可能想检查他们是否使用了足够高(或足够低)的版本来避免这个问题。

 类似资料:
  • 我在servlet过滤器中使用Redis进行身份验证,但我没有修改Redis。形态 第2行抛出一个异常。

  • 在运行selenium web驱动程序测试脚本时,我经常遇到InvalidSelectorException 我的测试失败,出现此InvalidSelector异常,并抛出以下消息: //在表达式中,@someform=xpath不能计算“//somelocator” 我使用的元素定位器是完美的,当我使用xpath检查器/或浏览器控制台验证它时,它会返回一个正确的web元素,所以元素定位器没有问题

  • 我有storm topology(1个worker)设置,其中spout(java)从redis出列(使用blpop)事件并传输到bolts。但是有一个观察到的情况是,当队列超过200万,并且在storm Nimbus/Supervisor/Zookeeper/Worker日志中没有发现警告/异常时,一些事件没有被bolt接收(在clojure中,6-spout线程、50-bolt线程)。

  • 问题内容: 所以我不确定到底要给大家看什么,但是如果您需要更多代码,请随时询问: 因此,此方法将在我们的应用程序中为Zend设置initMailer: 您可以看到其中的闭包。当我运行使用此代码的任何测试时,都会得到: 因此,与此“关闭”相关的所有测试均失败。所以我在这里问你们我应该怎么做。 为了澄清上述内容,所有操作都是在说,我们发出的任何电子邮件都希望将有关该电子邮件的信息存储在文件/ tmp

  • 我经常在日志中看到以下异常: 我发现当抛出时,没有什么要做的,所以我不确定为什么该异常被记录为ERROR。

  • 所以我想试试http客户端 我的模块信息是这样的 但我得到 我真的不明白为什么。我的java版本是“build 9-ea 169”,我使用的是IntelliJ idea的最新版本(2017.1.3)。我研究了这个答案,看起来我必须将需求添加到一个文件中,但由于某些原因,它不起作用。