当代理主机关闭/重新启动时,kafka客户端会继续将新请求发送到相同的主机。结果,请求失败并出现以下错误:请求在30000ms后超时。
节点版本:v6.8.1
Kafka节点版本:3.0.1
Kafka版本:2.11-2.0.0
经纪人数:3
主题的编号分区:10
一些代码指针:
"clusterConfig" : {
"kafkaHost": "localhost:9092,localhost:9093,localhost:9094",
"autoConnect": true
}
...
let kafkaClient = new kafka.KafkaClient(clusterConfig);
producer = new kafka.HighLevelProducer(kafkaClient, cluster.producerConfig);
Promise.promisifyAll(producer);
...
producer.sendAsync([eventPayload])
.then(function (data) {
let topicName = eventPayload.topic;
let payLoadSize = (eventPayload || '').length;
logger.eventInfo(topicName, payLoadSize, source);
})
.catch(function (e) {
logger.produceFailedEvent(eventPayload, source);
throw Error.getErrorObject(errorType, e, topic, source);
});
我将其他配置保留为默认设置。 请帮助解决问题。
谢谢, 沙申克