我正在使用Kafka 0.8.2.0(Scala 2.10)。在我的日志文件中,我间歇地看到以下消息。这似乎是一个连接问题,但我在我的localhost中运行。
这是一条无害的警告信息,还是应该采取措施避免它?
2015-10-30 14:12:38.015 WARN 4251 --- [ad | producer-1] [ ] o.apache.kafka.common.network.Selector : Error in I/O with localhost/127.0.0.1
java.io.EOFException: null
at org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:62)
at org.apache.kafka.common.network.Selector.poll(Selector.java:248)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:192)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:191)
at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:122)
at java.lang.Thread.run(Thread.java:745)
答案 0 :(得分:6)
这对党来说有点晚了,但可能对某人有所帮助 - 这对我有所帮助。
您看到的内容是因为Kafka经纪人在超过一定的闲置时间后被动关闭连接。它由此代理属性定义:connections.max.idle.ms - 默认值为10分钟。
显然,0.8.x中的kafka客户端并不尊重该设置,只是让空闲连接保持打开状态。您将在日志中看到警告,但它应该对您的应用程序产生不良影响。
此处有更多详情:https://issues.apache.org/jira/browse/KAFKA-3205
此处记录了代理配置:https://kafka.apache.org/090/documentation/#configuration
在该表中,您将找到:
Name: connections.max.idle.ms
Description: Idle connections timeout: the server socket processor threads close the connections that idle more than this
Type:long
Default: 600000
希望有所帮助。
答案 1 :(得分:0)
好像您的制作人无法连接到kafka经纪人。我建议您尝试使用kafka控制台生成器发送一些消息,以验证您的系统配置是否正确。