Olá pessoal,
Estou com o seguinte problema,
Tenho uma aplicação Servidor em uma máquina ( Windows Server 2008 ) que usa um ServerSocketChannel na porta digamos 9999.
Tenho mais 6 máquinas que tem uma aplicação cliente que cada uma abre 2500 sockets (usando SocketChannel) nesta máquina servidor.
Em determinado momento as máquinas clientes começam a dar o seguinte erro:
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at org.app.core.SocketPool$1.run(SocketPool.java:72)
at java.lang.Thread.run(Unknown Source)
enquanto que na aplicação servidor
java.io.IOException: Foi forçado o cancelamento de uma conexão existente pelo host remoto
at sun.nio.ch.SocketDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:33)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:100)
at sun.nio.ch.IOUtil.write(IOUtil.java:71)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:334)
at br.com.server.listener.shared.SharedMessageHandler.writeMessage(SharedMessageHandler.java:307)
at br.com.server.listener.message.MessageProcessor.sendToModule(MessageProcessor.java:558)
at br.com.server.listener.message.MessageProcessor.process(MessageProcessor.java:361)
at br.com.server.listener.message.MessageProcessor.processa(MessageProcessor.java:164)
at br.com.server.listener.message.MessageProcessor.linhas(MessageProcessor.java:92)
at br.com.server.listener.message.MessageProcessor.processBuffer(MessageProcessor.java:69)
at br.com.server.listener.shared.SharedMessageHandler.run(SharedMessageHandler.java:77)
at br.com.server.listener.shared.SharedMessageServer.run(SharedMessageServer.java:29)
alguém tem alguma dica do que pode ser ?