Postgresql 卡夫卡连接100%cpu

Postgresql 卡夫卡连接100%cpu,postgresql,apache-kafka,apache-kafka-connect,Postgresql,Apache Kafka,Apache Kafka Connect,我在Ubuntu18和JDK13上使用kafka_2.12-2.3.1。虽然一切正常,但我注意到Kafka connect消耗了100%的cpu。即使没有要处理的消息,它仍在继续消耗cpu 拍下了threaddump,但里面没有线索 我正在使用Postgre 11.X的Postgres连接器。此外,我正在以分布式模式启动卡夫卡连接 更新1 在搜索了各个站点之后,我得到了一些提示,并意识到这可能是JDK本身的一个bug(由轮询引起)。我看到了线程转储的一部分,它被大多数人突出显示 我将使用独立的k

我在Ubuntu18和JDK13上使用kafka_2.12-2.3.1。虽然一切正常,但我注意到Kafka connect消耗了100%的cpu。即使没有要处理的消息,它仍在继续消耗cpu

拍下了threaddump,但里面没有线索

我正在使用Postgre 11.X的Postgres连接器。此外,我正在以分布式模式启动卡夫卡连接

更新1

在搜索了各个站点之后,我得到了一些提示,并意识到这可能是JDK本身的一个bug(由轮询引起)。我看到了线程转储的一部分,它被大多数人突出显示

我将使用独立的kafka connect检查行为

"KafkaBasedLog Work Thread - connect-offsets" #31 prio=5 os_prio=0 cpu=828.02ms elapsed=1039.24s tid=0x00007f8530089800 nid=0x305b runnable  [0x00007f852a3f4000]
   java.lang.Thread.State: RUNNABLE
        at sun.nio.ch.EPoll.wait(java.base@13.0.1/Native Method)
        at sun.nio.ch.EPollSelectorImpl.doSelect(java.base@13.0.1/EPollSelectorImpl.java:120)
        at sun.nio.ch.SelectorImpl.lockAndDoSelect(java.base@13.0.1/SelectorImpl.java:124)
        - locked <0x00000000809efd98> (a sun.nio.ch.Util$2)
        - locked <0x00000000809efd40> (a sun.nio.ch.EPollSelectorImpl)
        at sun.nio.ch.SelectorImpl.select(java.base@13.0.1/SelectorImpl.java:136)
        at org.apache.kafka.common.network.Selector.select(Selector.java:794)
        at org.apache.kafka.common.network.Selector.poll(Selector.java:467)
        at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:539)
        at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:262)
        at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:233)
        at org.apache.kafka.clients.consumer.KafkaConsumer.pollForFetches(KafkaConsumer.java:1281)
        at org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1225)
        at org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1201)
        at org.apache.kafka.connect.util.KafkaBasedLog.poll(KafkaBasedLog.java:262)
        at org.apache.kafka.connect.util.KafkaBasedLog.access$500(KafkaBasedLog.java:71)
        at org.apache.kafka.connect.util.KafkaBasedLog$WorkThread.run(KafkaBasedLog.java:337)

“KafkaBasedLog工作线程-连接偏移量”#31 prio=5 os#u prio=0 cpu=828.02ms已用时间=1039.24s tid=0x00007f8530089800 nid=0x305b可运行[0x00007f852a3f4000]
java.lang.Thread.State:可运行
在sun.nio.ch.EPoll.wait(java)中。base@13.0.1/本机方法)
在sun.nio.ch.EPollSelectorImpl.doSelector(java。base@13.0.1/EPollSelectorImpl.java:120)
在sun.nio.ch.SelectorImpl.lock和doselect(java。base@13.0.1/SelectorImpl.java:124)
-锁定(sun.nio.ch.Util$2)
-锁定(sun.nio.ch.EPollSelectorImpl)
在sun.nio.ch.SelectorImpl.select(java。base@13.0.1/SelectorImpl.java:136)
位于org.apache.kafka.common.network.Selector.select(Selector.java:794)
位于org.apache.kafka.common.network.Selector.poll(Selector.java:467)
位于org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:539)
位于org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:262)
位于org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:233)
访问org.apache.kafka.clients.consumer.KafkaConsumer.pollForFetches(KafkaConsumer.java:1281)
访问org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1225)
访问org.apache.kafka.clients.consumer.KafkaConsumer.poll(KafkaConsumer.java:1201)
位于org.apache.kafka.connect.util.KafkaBasedLog.poll(KafkaBasedLog.java:262)
在org.apache.kafka.connect.util.KafkaBasedLog.access$500(KafkaBasedLog.java:71)
位于org.apache.kafka.connect.util.KafkaBasedLog$WorkThread.run(KafkaBasedLog.java:337)
更新2


尝试了独立模式,CPU仍然达到100%。我确认没有要处理的消息。

您使用哪个连接器?Jdbc还是Debezium?你能包括你的配置吗?另外,卡夫卡不支持JDK13yet@cricket_007添加了连接器详细信息,您是否尝试过使用不同的JDK或编辑与轮询相关的Connect中的任何消费者设置?@cricket_007,没有。我将尝试独立模式并更新结果。为什么不试用jdk8?您使用哪个连接器?Jdbc还是Debezium?你能包括你的配置吗?另外,卡夫卡不支持JDK13yet@cricket_007添加了连接器详细信息,您是否尝试过使用不同的JDK或编辑与轮询相关的Connect中的任何消费者设置?@cricket_007,没有。我将尝试独立模式并更新结果。为什么不使用jdk8进行试用?