我正在使用HTTP客户端通过持久的http连接将数据发送到服务器。 大约12 MB的数据在连接上作为HTTPRequest上的字节数组发送。这样做时,连接失败,并显示以下错误。
"[write] I/O error: Connection has been shutdown: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: socket write error"
这种情况是在将一定数量的数据写入连接后突然发生的。 我知道两者之间有一个代理和一个负载均衡器。但是无法运行提琴手来诊断确切的位置在关闭。
服务器为JBOSS 6.4,我尝试配置了较大的最大标头大小,但连接仍然失败。对于许多小型HTTP请求,通常不会发生这种情况,但只有在数据较大时才会失败。
无论如何,我都可以诊断有关连接为何关闭以及如何避免连接的实际原因。
答案 0 :(得分:0)
您没有指出请求在负载平衡器或代理级别终止的时间。
但是,Tomcat中有一个属性,maxSwallowSize检查Jboss是否具有类似的属性,并在Jboss服务器中对其进行配置。
出于故障排除的目的,您可以在Tomcat中部署工件,并查看该属性是否确实解决了您的问题。