gpt4 book ai didi

java - Apache Kafka 生产者错误 : Failed to send message after 3 tries

转载 作者:行者123 更新时间:2023-11-30 07:53:11 25 4
gpt4 key购买 nike

我们在 Linux Ubuntu 服务器上安装了 kafka,并使用批处理文件 - kafka-console- Producer.sh kafka-console-consumer.sh 测试了通信发现我们可以发布和接收消息

在同一网络上运行的Windows 计算机上。我们编写了一个java生产者客户端,其代码如图

Properties properties = new Properties();
properties.put("metadata.broker.list","192.168.7.1:9092");
properties.put("serializer.class","kafka.serializer.StringEncoder");
ProducerConfig producerConfig = new ProducerConfig(properties);
kafka.javaapi.producer.Producer<String,String> producer = new kafka.javaapi.producer.Producer<String, String>(producerConfig);
KeyedMessage<String, String> message =new KeyedMessage<String, String>("Calamp2","Test message from java program ");
producer.send(message);
producer.close();

当我们运行客户端时,我们收到以下错误

log4j:WARN No appenders could be found for logger (kafka.utils.VerifiableProperties). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Failed to send messages after 3 tries.

我们尝试了以下方法

  1. 从 Windows 计算机上 ping 通 ubuntu 计算机,它似乎工作正常
  2. 尝试了 Apache Kafka example error: Failed to send message after 3 tries 中的解决方案,但没有成功

我们观察到一件奇怪的事情,当我们在服务器上运行以下命令时 - bin/kafka-topics.sh --list --zookeeper localhost:2181 ,我们发现主题是从 Java 代码创建的,但消息尚未发布

感谢任何帮助

最佳答案

我们终于解决了这个问题...我们在混合环境中运行 kafka,如下文所述 -

https://medium.com/@thedude_rog/running-kafka-in-a-hybrid-cloud-environment-17a8f3cfc284

我们将host.name更改为内部IP,并将advertising.host.name更改为外部IP。这是同样的问题 Kafka 0.8.2.2 - Unable to publish messages

关于java - Apache Kafka 生产者错误 : Failed to send message after 3 tries,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33054722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com