Ошибка Кафки в операциях ввода-вывода java.io.EOFException: null
Я использую Kafka 0.8.2.0 (Scala 2.10). В моих файлах журнала я периодически вижу следующее сообщение. Это похоже на проблему с подключением, но я работаю на моем локальном хосте.
Это безобидное предупреждающее сообщение или я должен что-то сделать, чтобы этого избежать?
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)
3 ответа
Это немного позже для вечеринки, но может кому-то помочь - это помогло бы мне.
То, что вы видите, происходит потому, что брокер Kafka пассивно закрывает соединение после превышения определенного периода бездействия. Это определяется этим свойством брокера: connections.max.idle.ms - по умолчанию 10 минут.
Очевидно, клиент kafka в 0.8.x не соблюдает эту настройку и просто оставляет незанятые соединения открытыми. Вы увидите предупреждение в своих журналах, но оно не должно иметь негативных последствий для вашего приложения.
Более подробная информация здесь: https://issues.apache.org/jira/browse/KAFKA-3205
Конфигурация брокера описана здесь: https://kafka.apache.org/090/documentation/.
В этой таблице вы найдете:
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
Надеюсь, это поможет.
I have faced this issue while running the Kafka streams application using the Kafka broker of
0.8
I have tried changing the config provided by @Phil Brock in the above answer. But that did not seem to have any impact on it.
Upgrading the Kafka broker to
2.x
has only seemed to be the working solution for me.
When I looked for the Kafka streams version compatibility, I got this
Note, that a brokers must be on version 0.10. 1 or higher to run a Kafka Streams application version 0.10. 1 or higher; On-disk message format must be 0.10 or higher to run a Kafka Streams application version 1.0 or higher.
Похоже, ваш продюсер не может подключиться к брокеру кафки. Я предлагаю вам попробовать отправить некоторые сообщения производителю консоли kafka, чтобы убедиться, что ваша система настроена правильно.