性能调优 - 第一仗

生产系统登不上去啦!!!

刚到单位,无数个用户电话接踵而至。甲方的人员也过来了,恨不得一口气说完所有的抱怨,给我们的排查增加了额外的凝重。

好吧,静静心,捋一捋思路:

通常我们会从极端情况开始盘查:

1、生产主机的内存、cpu、IO、负载是不是很高?

根据经验,如果主机环境这些参数较高的话,服务器的响应能力肯定会急速下降。

top命令查看之后,基本排除这个假设

2、tomcat是不是内存溢出了?

根据经验,如果服务器内存溢出,肯定不会有任何响应了,但是我们从tomcat日志中看到,还有业务日志不停的记录。

所以,基本上也排除了这个想法。

3、既然主机和服务器都正常,那为什么没有响应,页面为什么停顿,服务器进程到底在干什么?

带着这一系列问题,我们用上了jstack -l  pid这个命令。

看到有一些线程,处于time_wait状态,仔细看看堆栈信息,发现是取不到DBCP连接池中的连接。

哦,终于知道问题所在了,连接池中的连接不够用,我们的应用中配置的是5个。马上着手改大配置。重启,得意。。。

殊不知,得意的有点早了,且看第二天故事的发展。

猜你喜欢

转载自gds-fighting.iteye.com/blog/1855451