Tomcat的无法响应数据? 400 报错
Tomcat中的应用可以处理请求,但是无法将数据返回给发起请求方,日志没有任何异常。查看Tcp连接,发现有280个处于CLose_wait状态,这是什么情况
这个问题应该是当天Tomcat请求数太多,处理不过来,接收到的请求一直在队列中等待处理,而对方设置10秒超时就close掉连接,等Tomcat处理完了之后,发现找不到返回的路,所以就会出现很多处于close_wait的tcp连接。
处理方案:1、第一次处理,Tomcat配置KeepAliveTimeOut设为30秒,让Tomcat自动断开连接,,第二天发现有段时间,响应仍然无法及时响应,但是过一段时间查看tcp连接发现又少了些处于close_wait的连接,此时响应正常,但是这不排除这段时间的请求数减少所带来的结果。
2、第二次处理,原先的Tomcat使用的配置,都是默认的,没有修改过,考虑到出现这种问题可能是并发数量所带来的影响,所以在第一次处理的基础上加大了maxThread的数量,这两天一直在监控服务的运行情况,发现一直都很正常。
这是我遇到问题的处理方案,希望有遇到同等情况可以借鉴参考,毕竟问题千差万别,试用我的,未必适用其他人。
######tomcat前面有nginx之类的代理么?确认下tomcat、nginx的超时时间,可能会主动断开连接
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。