多執行緒使用ZK客戶端可能會出現的問題。java.io.IOException: 遠端主機強迫關閉了一個現有的連線。
阿新 • • 發佈:2019-02-13
java.io.IOException: 遠端主機強迫關閉了一個現有的連線。 at sun.nio.ch.SocketDispatcher.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:192) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) at org.apache.zookeeper.ClientCnxnSocketNIO.doIO(ClientCnxnSocketNIO.java:68) at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:366) at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1145)
出現這個的原因是zookeeper客戶端連線數太多,預設最大連線數是60
解決辦法:
一、修改客戶端連線數。
二、修改zookeeper的配置檔案zoo.cfg,新增引數:maxClientCnxns=200