kafka TimeoutException 超时问题解决

一、报错:: java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition.java

 报错缘由:producer在向kafka broker写的时候,恰好发生选举,原本是向broker0上写的,选举以后broker1成为leader,因此没法写成功,就抛异常了。apache

 解决办法:修改producer的重试参数retries参数,默认是0,  通常设置为3, 我在生产环境配置的retries=10server

 

二、java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for binlogCsbbroker-2 due to 30026 ms has passed since batch creation plus linger timekafka

  报错缘由:具体缘由我本身尚未找到,可是网友们都说是由于kafka在批量写的时候,这一批次的数据没有在30s内还处理完,(30s为request.timeout.ms默认值),这一批次的数据就过时了,因此抛出异常it

  解决办法:增大request.timeout.ms, 我在生产环境配置的是request.timeout.ms=60000  // 由原来默认的30s改为60sio

 

三、java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.NetworkException: The server disconnected before a response was received.cli

  报错缘由:kafka client与broker断开链接了sed

  解决办法:重启服务配置

相关文章
相关标签/搜索