kafka Failed to send messages after 3 tries 问题解决
2016-08-03 15:48
429 查看
kafka Failed to send messages after 3 tries.
在kafka0.8开发过程中 生产者测试用例碰到了
Exception in thread "main" kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.
at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:90)
at kafka.producer.Producer.send(Producer.scala:76)
at kafka.javaapi.producer.Producer.send(Producer.scala:33)
at com.tuan55.kafka.test.TestP.main(TestP.java:20)
这样的错误。
起初以为是网络问题,经确认网络没有问题。
Properties props = new Properties();
props.put("metadata.broker.list", "xx.xx.xx.xx:9092");
props.put("serializer.class", "kafka.serializer.StringEncoder");
props.put("request.required.acks", "1");
ProducerConfig config = new ProducerConfig(props);
Producer<String, String> producer = new Producer<String, String>(config);
KeyedMessage<String, String> km = new KeyedMessage<String, String>("mm", "key-1", "content-1-中文");
producer.send(km);
producer.close();
这是生产者的代码 在向服务器发起连接后,在kafka的服务器配置中有zookeeper.connect=xx.xx.xx.xx:2181的配置 这时候kafka会查找zookeeper
那么如果我们的hosts 中没有做hosts的配置 kafka经多次尝试连接不上就会报上面的错误。
解决办法:配置hosts文件 做zookeeper服务器的映射配置。
出现此种错误 还有一种情况
# Hostname the broker will advertise to producers and consumers. If not set, it uses the
# value for "host.name" if configured. Otherwise, it will use the value returned from
# java.net.InetAddress.getCanonicalHostName().
advertised.host.name=192.168.1.118
远程连接的话 是根据这个配置来找broker的,默认是localhost ,所以如果不是本机运行的话 应该设置此值 来确保通信畅通。
在kafka0.8开发过程中 生产者测试用例碰到了
Exception in thread "main" kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries.
at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:90)
at kafka.producer.Producer.send(Producer.scala:76)
at kafka.javaapi.producer.Producer.send(Producer.scala:33)
at com.tuan55.kafka.test.TestP.main(TestP.java:20)
这样的错误。
起初以为是网络问题,经确认网络没有问题。
Properties props = new Properties();
props.put("metadata.broker.list", "xx.xx.xx.xx:9092");
props.put("serializer.class", "kafka.serializer.StringEncoder");
props.put("request.required.acks", "1");
ProducerConfig config = new ProducerConfig(props);
Producer<String, String> producer = new Producer<String, String>(config);
KeyedMessage<String, String> km = new KeyedMessage<String, String>("mm", "key-1", "content-1-中文");
producer.send(km);
producer.close();
这是生产者的代码 在向服务器发起连接后,在kafka的服务器配置中有zookeeper.connect=xx.xx.xx.xx:2181的配置 这时候kafka会查找zookeeper
那么如果我们的hosts 中没有做hosts的配置 kafka经多次尝试连接不上就会报上面的错误。
解决办法:配置hosts文件 做zookeeper服务器的映射配置。
出现此种错误 还有一种情况
# Hostname the broker will advertise to producers and consumers. If not set, it uses the
# value for "host.name" if configured. Otherwise, it will use the value returned from
# java.net.InetAddress.getCanonicalHostName().
advertised.host.name=192.168.1.118
远程连接的话 是根据这个配置来找broker的,默认是localhost ,所以如果不是本机运行的话 应该设置此值 来确保通信畅通。
相关文章推荐
- [转]wait,notify,notifyAll,join,yield,sleep的区别和联系
- http://blog.csdn.net/xiaoyu411502/article/details/51064885
- BZOJ 2118 墨墨的等式[Waiting]
- xcode编译错误'../lib/DropboxSDK.framework/DropboxSDK' does not contain bitcode.
- 使用Thumbnailator缩略图片
- Leetcode 70. Climbing Stairs
- 烧写Uboot到SD卡,,打开 sd_mbr.bat 失败,打开 SD-bl1-8k.bin 失败,failed to open'SD-bl1-8k.bin',
- hdu DNA repair(AC自动机+DP)
- Cuda+Chainer训练Artistic style模型GPU加速配置
- 2016 Multi-University Training Contest 5
- RAID独立冗余磁盘阵列简述
- brainfack语言解析器
- hdu 5781 2016 Multi-University Training Contest 5(期望dp)
- uva 10780 Again Prime? No Time.
- Git 本地共享库无法提交 the push operation failed because no matching remote could be found
- Service和远程控制
- 《Batch Normalization Accelerating Deep Network Training by Reducing Internal Covariate Shift》阅读笔记与实现
- log4j:ERROR Failed to rename错误
- 利用正则表达式揪出网页中的email地址
- hdu 5791 Two(2016 Multi-University Training Contest 5——DP)