我正在Red Hat服务器上部署带有Tomcat / Jetty的Java SOAP servlet。我在另一台服务器上启动客户端,每秒发送5个请求。我的读取超时为10秒,请求平均需要处理20毫秒。
但有时1小时后,Web服务器永远不会回答请求。客户端记录SocketTimeoutException:Read timed out。
我用Wireshark查看了tcpdump,只有当它是TCP连接的第一个请求时才会出现问题。服务器确认所有数据包。当我降低Keep-Alive连接的数量时,问题会更频繁发生。
似乎Tomcat / Jetty接受了连接,但它没有读取任何内容。我尝试了100秒的读取时间,问题仍然存在。
你知道是什么原因引起的吗?