org.apache.kafka.common.errors.TimeoutException

个人博客地址:org.apache.kafka.common.errors.TimeoutException | 一张假钞的真实世界

使用kafka-console-producer.sh向远端Kafka写入数据时遇到以下错误:

复制代码
$ bin/kafka-console-producer.sh --broker-list 172.16.72.202:9092 --topic test
This is a message
[2017-08-24 11:47:48,286] ERROR Error when sending message to topic test with key: null, value: 17 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for test-0: 1523 ms has passed since batch creation plus linger time
八月 24, 2017 11:50:55 上午 sun.rmi.transport.tcp.TCPTransport$AcceptLoop executeAcceptLoop
警告: RMI TCP Accept-0: accept loop for ServerSocket[addr=0.0.0.0/0.0.0.0,localport=38175] throws
java.io.IOException: The server sockets created using the LocalRMIServerSocketFactory only accept connections from clients running on the host where the RMI remote objects have been exported.
	at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:114)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:400)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:372)
 	at java.lang.Thread.run(Thread.java:748)

在没有配置advertised.host.name的情况下,Kafka并没有广播我们配置的host.name,而是广播了主机配置的hostname。远端的客户端并没有配置hosts,所以自然是连接不上这个hostname的,所以在远端客户端配置hosts。在客户端/etc/hosts中添加以下内容后问题解决:

复制代码
172.16.72.202 172-16-72-202
相关推荐
SelectDB1 小时前
从 Greenplum 到 Doris:集群缩减 2/3、年省数百万,度小满构建超大规模数据分析平台经验
数据库·数据分析·apache
雨中飘荡的记忆5 小时前
Kafka入门:从零开始掌握消息队列
kafka
txinyu的博客5 小时前
HTTP服务实现用户级窗口限流
开发语言·c++·分布式·网络协议·http
独自破碎E5 小时前
RabbitMQ中的Prefetch参数
分布式·rabbitmq
深蓝电商API6 小时前
Scrapy+Rredis实现分布式爬虫入门与优化
分布式·爬虫·scrapy
indexsunny7 小时前
互联网大厂Java面试实战:Spring Boot与微服务在电商场景的应用解析
java·spring boot·redis·微服务·kafka·gradle·maven
回家路上绕了弯7 小时前
定期归档历史数据实战指南:从方案设计到落地优化
分布式·后端
rchmin9 小时前
Distro与Raft协议对比分析
分布式·cap
小辉笔记9 小时前
kafka原理总结
分布式·kafka
实战项目9 小时前
分布式协作入侵检测系统的报警信息管理
分布式