【问题标题】:Kafka ConcurrentMessageListenerContainer stops consuming abruptlyKafka ConcurrentMessageListenerContainer 突然停止消费
【发布时间】:2020-11-09 23:14:36
【问题描述】:

我正在使用 Spring kafka 使用 ConcurrentMessageListenerContainer 来消费消息,在生产中我看到它突然停止消费消息,没有任何错误,有时甚至一个带有 VM 的消费者停止消费,而其他消费者仍在消费(我有 15 partitions和3个JVM,每个都有5个并发)。

当我重新启动 JVM 时,它开始消耗!!!

无论如何我可以定期检查消费者是否已经死亡或其他什么,我可以在不重新启动 JVM 的情况下重新启动它!

【问题讨论】:

    标签: apache-kafka spring-kafka


    【解决方案1】:

    很可能,消费者线程“卡”在您的代码中的某个地方。我建议您在发生这种情况时进行线程转储,以查看线程在做什么。

    【讨论】:

    • 嘿 Gary .... 这就是我所做的,并且看到消费者线程确实处于阻塞状态!下一个问题我们如何从这个建议中恢复?
    • 这取决于它被阻止的内容。例如,如果它阻止尝试从套接字读取,您可以在套接字上设置超时(或关闭它以强制出错)。
    • 谢谢 Gary ..... 阻塞线程是 kafka-coordinator-heartbeat-thread .... 我在 stackoverflow 中经历了几个线程,人们提到由于这个线程被停止消费消息被阻止......不确定这是否是根本原因
    猜你喜欢
    • 2019-10-02
    • 2017-09-23
    • 2019-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多