newtester2008 发表于 2008-6-10 13:49:18

10用户并发,应用服务器的CPU使用率就高得不行了

应用服务器配置:AIX5.1,CPU 1.2G*1,Memory 2G
应用服务:Websphere
这是vmstat监控到的值
kthr    memory            page            faults      cpu   
----- ----------- ------------------------ ------------ -----------
rb   avm   frerepipofr   srcyin   sycs us sy id wa
00 246913 182634   0   0   0   0    0   014 38609410 990
00 246914 182633   0   0   0   0    0   0   8 42968422 970
10 246931 182489   0   0   0   0    0   0 116 4702 335 154 810
70 246936 182515   0   0   0   0    0   0 1588 27439 2717 71 2720
90 246936 182527   0   0   0   0    0   0 1604 28003 2734 75 2410
70 246936 182806   0   0   0   0    0   0 1567 28295 2723 75 2310
40 246936 182657   0   0   0   0    0   0 720 14093 1377 38 12 500
00 246936 182657   0   0   0   0    0   015 39749911 970


同时,数据库服务器的CPU、内存、i/o都没有问题,如何定位该问题?

Zee 发表于 2008-6-10 14:03:05

查应用。在操作什么模块,然后查相应的代码。

newtester2008 发表于 2008-6-12 10:17:30

web_url("study",
"URL=http://192.168.0.114:9080/study",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
EXTRARES,
"Url=/study/study/img/welcome.gif", "Referer=http://192.168.0.114:9080/study/", ENDITEM,
LAST);
web_submit_form("loginAction.do",
"Snapshot=t2.inf",
ITEMDATA,
"Name=loginName", "Value=admin_hz_yh", ENDITEM,
"Name=password", "Value=password", ENDITEM,
"Name=submit", "Value=登录", ENDITEM,
LAST);

这是登录的一段脚本,如果注释掉web_submit_form,400用户并发CPU情况:
09:45:38    %usr    %sys    %wio   %idle
09:45:39       6       5       0      89
09:45:40      67      12       0      21
09:45:41      71      29       0       0
09:45:42      36      19       0      46
09:45:43       8       4       0      88
09:45:44      37      28       0      35
09:45:45      45      35       0      20
09:45:46       1       1       0      98
不注释web_submit_form,400用户并发CPU情况:
09:47:33    %usr    %sys    %wio   %idle
09:47:34       7       5       0      88
09:47:35      56      28       0      16
09:47:36      49      19       0      32
09:47:37      48      22       0      30
09:47:38      57      16       0      27
09:47:39      55      43       0       2
09:47:40      75      23       0       2
09:47:41      67      33       0       0
09:47:42      74      25       0       1
09:47:43      66      30       0       4
09:47:44      79      19       0       2
09:47:45      68      32       0       0
09:47:46      48      25       1      26
09:47:47      52      24       0      24
09:47:48       1       2       0      97

很明显加入了web_submit_form操作,CPU占用比较高,而我们的程序基本都是由这样的操作组成的,越多的web_submit_form操作,并发数很少的情况下就导致应用服务的CPU使用很高。

开发查了代码也很难说清楚程序有什么问题,Websphere的哪些参数配置会影响吗?还是程序代码的处理逻辑问题?帮忙分析一下

wy3552128 发表于 2008-6-12 13:08:38

AIX--unix?你用topas指令,这个比较准确点。
*******************************************************************************
*                                                                           *
*                                                                           *
*Welcome to AIX Version 5.2!                                                *
*                                                                           *
*                                                                           *
*Please see the README file in /usr/lpp/bos for information pertinent to    *
*this release of the AIX Operating System.                                  *
*                                                                           *
*                                                                           *
*******************************************************************************

web_submit_form()为请求函数 部能少的。

newtester2008 发表于 2008-6-12 19:18:52

原帖由 wy3552128 于 2008-6-12 13:08 发表 http://bbs.51testing.com/images/common/back.gif
AIX--unix?你用topas指令,这个比较准确点。
*******************************************************************************
*                                                                           ...
topas只是能看到那个进程占用CPU的百分比,java也就是websphere占用CPU高,原因还是未找到

Zee 发表于 2008-6-12 23:01:12

websphere不是有监控界面吗?看了吗?

newtester2008 发表于 2008-6-13 10:31:59

原帖由 Zee 于 2008-6-12 23:01 发表 http://bbs.51testing.com/images/common/back.gif
websphere不是有监控界面吗?看了吗?
TPV吗?不知道该看哪些指标信息,可以进一步指明一下吗?

rickyzhu 发表于 2008-6-13 20:59:35

不加web_submit_form当然不会有压力,都是浏览页面能有什么压力?

越多的web_submit_form操作,并发数很少的情况下就导致应用服务的CPU使用很高。
从这句话看:也许是有些东西没有释放的原因,你用了连接池了吗?如果不用,也许几个用户,连续的连接就把连接用完了,没有释放,后续的链接当然就慢了。
--仅仅是一种猜测,不是很熟悉webspere,不过原理都一样的,看看tomcat或者apache也是一样的
页: [1]
查看完整版本: 10用户并发,应用服务器的CPU使用率就高得不行了