Apache kafka 卡夫卡制作人陷入困境
我使用的是spring kafka,我们看到我们的制作人在调用get on listenable future时陷入困境 我的代码Apache kafka 卡夫卡制作人陷入困境,apache-kafka,spring-kafka,Apache Kafka,Spring Kafka,我使用的是spring kafka,我们看到我们的制作人在调用get on listenable future时陷入困境 我的代码 try { kafkaTemplate.sendDefault(event).get(); } catch (InterruptedException | ExecutionException ex) { throw new RuntimeException(ex); } 我们使用的max.block.ms默认值为60000(60秒),但我从未遇到过中断或
try {
kafkaTemplate.sendDefault(event).get();
} catch (InterruptedException | ExecutionException ex) {
throw new RuntimeException(ex);
}
我们使用的max.block.ms默认值为60000(60秒),但我从未遇到过中断或执行异常,它似乎一直在等待get
卡夫卡模板是否反复尝试发送消息,还是应该失败?您使用的是哪个版本?如果经纪人破产,卡夫卡的老客户通常会这样阻止。该模板只是将发送委托给卡夫卡
制作人
。打开org.apache.kafka的调试日志以查看发生了什么。org.apachekafka:kafka客户端:2.0.1不应挂起的客户端(超过max.block.ms);调试日志记录是下一步;还要进行线程转储以查看线程正在执行的操作。模板不会重试,它将在kafka客户端调用发送回调时完成。您的代理是否配置为自动创建主题/kafka中是否已存在该主题?我见过这样的例子:如果代理未配置为自动创建主题,而生产者尝试生成不存在的主题,则请求将挂起,因为生产者正在等待创建主题并写入。