论坛首页 Java企业应用论坛

WAS6.1连接池的疑惑

浏览 2164 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-12-08  
最近公司的WAS服务器(6.1版本)经常出问题,表现为用户请求页面速度慢,甚至无法打开,直接报数据库连接失败,我对当时的系统日志进行了分析,怀疑当时的连接池满了,因此我在测试环境上做了测试,发现连接池满了以后重现了当时用户情况。因此查看了WAS的性能分析,发现有几个地方搞不太清楚:

请看下图中:这张图是目前WAS重启后运行1天的情况,我发现POOLSIZE是39,freePoolSize=0,Percentused=39%,说明现在无空闲连接池,连接池的平均使用效率是39%,目前WAS连接池设置 min/max是10/100,我的问题是:我自己在测试服务器测试时候,发现如果POOLSIZE到达了最大,而且freePoolSize=0,那么Percentused就会达到100%,这个时候再有线程请求过来,速度就会慢下来,并且waitingTreadCount就会开始累加1,直到前面的链接返回到池以后后面几个请求才会继续。虽然我测试出来时这个情况,但实际看IBM的官方文档写的感觉跟我有些出入。

另外一个问题是,我的freePoolSize总是很小,说明一直没有空闲连接,这样的话,第二天如果请求量一大,连接池一旦达到峰值,freePoolSize又没有了的话,是不是又会影响用户访问速度,如果并发量再一大,超过webContainer最大值,都随时可能有宕机的风险了。。我只有每隔一段时间去重启一下WAS才能避免这种情况,那岂不是很麻烦。。。。。

  • 大小: 130.1 KB
   发表时间:2013-12-13  
max有100的话,如果连接池还是经常满,还是先从程序查起吧,是不是最近有修改,连接忘释放了?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics