- apache 死机,apache无法连接tomcat,查看apache的log,errorlog;
- tomcat死机,tomcat的连接数不够可能,也可能tomcat的请求长时间无法返回,看tomcat的localhost.log,不是catalina.out。
- 如果资源文件很多,每个用户的请求会导致产生x100个的js和图片请求,也会消耗tomcat和apache的连接数,如果用户带宽慢也会导致连接数不够,最终导致用户无法访问(类似攻击就是这么做的,连了而不断开);
- tomcat上的一个请求如果查询时间长,那么如果多个人都调用此连接,那么就会导致tomcat的连接数快速耗尽,一般主要的可能性是这个;
- 如果是上述问题,很容易从数据库的topsql里面去找到,运维需要经常检查数据库是否有长时间运行的sql,如果是前端请求对应的sql,则如果访问的人多了会迅速吊死整个系统,目前大部分情况都是这样的;
- Oracle的log上面如果有大量的commit的错误,说明写操作多,数据库io跟不上,如果没有则说明只有读操作,读的操作oracle不会打log,但是如果客户端死掉了,则oracle会报错说客户度无响应,报错在TNS连接上面。
- 如果有大量的插入和update,delete等操作,需要考虑数据量,比如插入100万条,那肯定不能每条commit,而是应该批量插入和commit,对于update和delete如果where限制条件宽,那么会导致大量的rollbock,undo等操作,io会很
Tomcat无响应问题定位流程
最新推荐文章于 2023-08-29 22:26:42 发布