【问题标题】:Apache Kafka Producer error: Failed to send message after 3 triesApache Kafka Producer 错误:3 次尝试后发送消息失败
【发布时间】:2015-10-10 13:52:57
【问题描述】:

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

在同一网络上运行的 Windows 机器上。我们写了一个java producer client,代码如图

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 找不到记录器的附加程序 (kafka.utils.VerifiableProperties)。 log4j:WARN 请初始化 log4j 系统正常。 log4j:WARN 见 http://logging.apache.org/log4j/1.2/faq.html#noconfig 了解更多信息。 3 次尝试发送消息失败。

我们尝试了以下

  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代码创建的,但消息未发布

感谢任何帮助

【问题讨论】:

    标签: java ubuntu apache-kafka kafka-producer-api


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-09
      • 1970-01-01
      • 2011-12-28
      相关资源
      最近更新 更多