我在关键应用程序中使用Kafka Streams,并且遇到事务在空闲线程中到期的问题。在重新平衡之后,这会导致问题,其中任务转移到生产者已过期的先前空闲线程。但是,直到生产者第一次尝试发送时,这种情况才变得明显,此时,它会抛出ProducerFencedException并关闭流。然后,我们需要回收应用程序以使其重新开始处理,这是不可接受的。
这是应用程序设置:
任何人对我们如何设置我们的Kafka Streams应用程序或Kafka集群以使该设置不使交易到期的见解,我将不胜感激。
相关版本:Kafka群集版本:1.0.0,Kafka客户端版本:1.1.0,Spring Boot版本:2.0.0