Our application works as a HTTP proxy, and there are 1000s of client connected to our proxy, and our proxy route those requests to destination server.
We are using connection pooling(pool size is 30000) in a real high volume environment, and seeing following error in logs. We never saw these errors in load testing,
and rarely saw these errors in a low volume environment. There are firewall and LB in front to destination server from our proxy app.
java.io.IOException: An existing connection was forcibly closed by the remote host
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(Unknown Source)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(Unknown Source)
at sun.nio.ch.IOUtil.read(Unknown Source)
Is there something wrong I might be doing? I believe that it something on network, and out of my control on how I can fix this error.
We definitely want to use connection pooling because of there could be upto 50000 clients connecting to my app.