0

我遇到了基于KStreams的应用程序的问题:它会运行一次,当我停止/重新启动时,它会“卡住”并且在我删除它创建的各种主题之前不会再继续。这不会每次都发生,但经常发生。

通常,当我将新(er)版本复制到工作 VM 时(出于速度原因,在与 kafka 集群相同的子网中)时,会发生这种情况。

当它被楔入时,我会看到;

  1. “连接”: org.apache.zookeeper.ZooKeeper - Initiating client connection
  2. “客户”:[StreamThread-1] INFO o.a.k.s.p.internals.StreamTask - Creating restoration consumer client
  3. “Ping”:我会看到这些,应用程序不会正常关闭。它必须被杀死。

在任何这些情况下,消息通常会无限重复(嗯 - 至少在午餐+会议期间一直重复。IE 太长了)。

在这种情况发生之前,该应用程序正在“干净地”关闭。

我究竟做错了什么?


编辑:

最近一次 - 20 分钟后,我收到一连串错误:

org.apache.kafka.common.errors.TimeoutException:包含 101 条记录的批次由于超时而过期,同时向代理请求元数据

其次是:

org.apache.kafka.clients.consumer.CommitFailedException:提交无法完成,因为该组已经重新平衡并将分区分配给另一个成员

--> 这是一个很好的技巧,因为没有其他成员

4

1 回答 1

2

如果您使用 Kafka 0.10.0.x 运行,那么您可能会遇到一个已知问题:

https://cwiki.apache.org/confluence/display/KAFKA/KIP-62%3A+Allow+consumer+to+send+heartbeats+from+a+background+thread

这已在即将发布的 Kafka 0.10.1.0 版本中解决,我建议您尝试新版本以查看此问题是否消失。

于 2016-10-05T00:40:19.983 回答