51Testing软件测试论坛

标题: 关于nmon报告的分析 [打印本页]

作者: ytcaicai    时间: 2012-4-17 10:15
标题: 关于nmon报告的分析
本帖最后由 ytcaicai 于 2012-4-17 10:35 编辑

最近对在做性能测试,收集了一部分结果(自己也试着去分析,但分析的不知道是否正确),所以希望能听到大家的分析点评,附件是我的nmon测试结果和analyser的结果。大家有兴趣的可以看看。
作者: mymagic    时间: 2012-4-17 10:18
where is 附件?
作者: mymagic    时间: 2012-4-17 11:13
从NMON文件看,CPU、内存消耗太大了
CPU已经80%时间处于100%状态,基本是瓶颈了,或者程序处理不能。
内存与CPU消耗情况相同。

从lra文件看,search事件 90 Percent 7.127s,500并发应该差不多。看测试需求吧。
综上:服务器硬件是瓶颈。
个人观点,未必准确。
作者: ytcaicai    时间: 2012-4-17 11:41
首先,谢谢楼上的分析。
作者: ytcaicai    时间: 2012-4-17 11:58
本帖最后由 ytcaicai 于 2012-4-17 12:51 编辑

在补几点说明:
一、关于超时的问题
1、100个用户时,最大在线用户数也是98,报错:
Action.c(212): Error : save param parameter is invalid. Error code : 9005.

2、300个用户时,最大在线用户数是163,报错:
Action.c(212): Error : save param parameter is invalid. Error code : 9005.
vuser_init.c(13): Error : Timeout expired while trying to connect. Error code : 9017.

3、500个用户时,最大在线用户数也是163,报错:

Action.c(212): Error : save param parameter is invalid. Error code : 9005.
vuser_init.c(13): Error : Timeout expired while trying to connect. Error code : 9017.
Action.c(8): Error : socket0 - Connection reset by peer. Error code : 10054.

其中,300和500个用户时,有个现象,场景才开始运行时,就一直报 超时的(9017)的错,没有PASS的事物,根本就没有RUN起来,直接从就绪状态到FAILED,但是FAILED一定数目的用户后,下面的运行比较正常,
而100个用户时没有这种现象。

二、关于持续运行时间的问题
明明设置了运行时间是30分钟,但是,实际相差太大,实际运行的时间只有几分钟,这可能是什么原因导致没有持续运行设定的时间长度?
作者: superfang    时间: 2012-4-17 12:57
回复 1# ytcaicai

分析
1、nmon分析查看
  1)CPU: 16个CPU使用率都超过了95%以上,这个值说明你的CPU已经达到极限值,分析点:那个功能引起耗费CPU资源,哪个部分耗费时间比较长,建议将系统的日志打印出来,进一步分析,进而定位到代码或是函数级别
  2)mem
      cached+memfree+buffers >7G 内存应该没有问题
2、loadrunner oracle分析
1)SQL语句:
    查询出比较耗费资源的SQL语句
2)监控日志中 opened  cursors current
       打开的游标平均值在 1641 ,这值是不是过大了,过大了说明你的SQL语句可能执行过慢的。游标一直没有得到释放。
3)oracle 表索引
    检索的功能,查询的表基本上是固定的,查看一下索引是否合理的。
4)表数据量大小
    建议你分析一下oracle现在表的数据量是否过大,最好的数据是依据线上的数据库的数据量分析
作者: ytcaicai    时间: 2012-4-17 13:14
,非常感谢热心的朋友们!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2