我遇到了基于KStreams的应用程序的问题:它会运行一次,当我停止/重新启动时,它会“卡住”并且在我删除它创建的各种主题之前不会再继续。这不会每次都发生,但经常发生。
通常,当我将新(er)版本复制到工作 VM 时(出于速度原因,在与 kafka 集群相同的子网中)时,会发生这种情况。
当它被楔入时,我会看到;
- “连接”:
org.apache.zookeeper.ZooKeeper - Initiating client connection
- “客户”:
[StreamThread-1] INFO o.a.k.s.p.internals.StreamTask - Creating restoration consumer client
- “Ping”:我会看到这些,应用程序不会正常关闭。它必须被杀死。
在任何这些情况下,消息通常会无限重复(嗯 - 至少在午餐+会议期间一直重复。IE 太长了)。
在这种情况发生之前,该应用程序正在“干净地”关闭。
我究竟做错了什么?
编辑:
最近一次 - 20 分钟后,我收到一连串错误:
org.apache.kafka.common.errors.TimeoutException:包含 101 条记录的批次由于超时而过期,同时向代理请求元数据
其次是:
org.apache.kafka.clients.consumer.CommitFailedException:提交无法完成,因为该组已经重新平衡并将分区分配给另一个成员
--> 这是一个很好的技巧,因为没有其他成员。