在kafka的server.log中发现持续爆出如下错误信息:
1 2 3 4 5 6 7 8 9 10 11 12 |
[2018-10-24 19:18:43,103] ERROR Closing socket for /xxx.xxx.xxx.xxx because of error (kafka.network.Processor) java.io.IOException: Connection reset by peer at sun.nio.ch.FileDispatcherImpl.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:197) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) at kafka.utils.Utils$.read(Utils.scala:380) at kafka.network.BoundedByteBufferReceive.readFrom(BoundedByteBufferReceive.scala:54) at kafka.network.Processor.read(SocketServer.scala:444) at kafka.network.Processor.run(SocketServer.scala:340) at java.lang.Thread.run(Thread.java:745) |
查了下原因,是因为kafka的客户端异常关闭,而Kafka仍在向其推送数据导致的。
没有找到太好的解决办法。最后使用了一个笨方法:先停掉所有的生产者和消费者服务,再停掉Kafka;而后重启Kafka、重启停掉的服务。这样异常就消失了。
后来又发现这个异常断续出现了几次,因为是测试环境,懒得去管它,神奇的是居然最后也自动恢复了。
######
发表评论