Kafka Stream Thread Count 预期翻倍
Kafka Stream Thread Count double expected
如果我创建一个简单的拓扑结构,其中有一个源和一个处理器,我将在控制台中获得两倍于预期的 StreamThread。
例如,如果我将线程设置为一个并且有一个分区,我会看到 2 个流线程。如果我设置为 20 个线程并有 20 个分区,我会看到 40 个流线程。
根据 ,我期望这些数字的一半。
我配置有误或者这是预期的?
编辑:
在 stream = new KafkaStreams(topology, streamsConfig) 之后;被称为我只看到它创建了 20 个线程。
调用 stream.start() 后,我看到这 20 个线程从 CREATED 过渡到 运行。
其他 20 个线程是在初始化的后期才创建的。看起来 StreamsBuilderFactoryBean#start() 然后在拓扑不包含任何内容的地方被调用。看起来我要么需要阻止它以某种方式被调用,要么删除我的创建过程。不确定什么是首选。
原来@EnableKafkaStreams 注释将为您启动kafka 流。因为我没有创建拓扑 bean,所以没有冲突,因为它是一个空拓扑。
如果我创建一个简单的拓扑结构,其中有一个源和一个处理器,我将在控制台中获得两倍于预期的 StreamThread。
例如,如果我将线程设置为一个并且有一个分区,我会看到 2 个流线程。如果我设置为 20 个线程并有 20 个分区,我会看到 40 个流线程。
根据
我配置有误或者这是预期的?
编辑: 在 stream = new KafkaStreams(topology, streamsConfig) 之后;被称为我只看到它创建了 20 个线程。
调用 stream.start() 后,我看到这 20 个线程从 CREATED 过渡到 运行。
其他 20 个线程是在初始化的后期才创建的。看起来 StreamsBuilderFactoryBean#start() 然后在拓扑不包含任何内容的地方被调用。看起来我要么需要阻止它以某种方式被调用,要么删除我的创建过程。不确定什么是首选。
原来@EnableKafkaStreams 注释将为您启动kafka 流。因为我没有创建拓扑 bean,所以没有冲突,因为它是一个空拓扑。