关闭

如何使用LoadRunner进行资源占用率的分析?

发表于:2009-4-30 15:36

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:archonwang    来源:51Testing论坛

问题描述:LoadRunner作为业界最流行的性能测试工具,应用已经十分广泛。LoadRunner如何分析性能数据,这个是每一个做性能测试人员都非常关心的话题。但此话题受具体业务和环境的影响不太好回答,所以缩小一下范围。如何使用LoadRunner进行资源占用率(CPU,内存,硬盘)的分析?

精彩答案:

  情况比较复杂,有兴趣的话可以就这个问题写本很厚的书。

  1. 系统分类

  1.1. windows

  1.2. unix/linux

  2. 核心分类

  1.1. 单核CPU

  1.2. 多核CPU

  3. 应用分类

  3.1. JAVA应用

  3.2. DotNet应用

  3.3. 其他应用

  4. 磁盘分类

  5. 平台分类

  5.1. 中间件平台

  5.2. 数据库平台

  5.3. 其他中间件平台

  6. 综合以上这些内容分析,相信会有很多排列组合。由于参数组合及应用的复杂性,说性能的高低标准实在很难一概而论。只能就事论事,依照情况分析。

  之前有过一些分析的帖子和博文,一概拿来主义,分享下(感谢那些曾经整理过并拿来分享的兄弟姐妹)。

  原帖请看:《LoadRunner监视的性能计数器》http://www.51testing.com/html/60/n-8460.html

  Memory: 内存使用情况可能是系统性能中最重要的因素。如果系统“页交换”频繁,说明内存不足。“页交换”是使用称为“页面”的单位,将固定大小的代码和数据块从 RAM 移动到磁盘的过程,其目的是为了释放内存空间。尽管某些页交换使Windows 2000 能够使用比实际更多的内存,也是可以接受的,但频繁的页交换将降低系统性能。减少页交换将显著提高系统响应速度。要监视内存不足的状况,请从以下的对象计数器开始:

  Available Mbytes:可用物理内存数. 如果Available Mbytes的值很小(4 MB 或更小),则说明计算机上总的内存可能不足,或某程序没有释放内存。

  page/sec: 表明由于硬件页面错误而从磁盘取出的页面数,或由于页面错误而写入磁盘以释放工作集空间的页面数。一般如果pages/sec持续高于几百,那么您应该进一步研究页交换活动。有可能需要增加内存,以减少换页的需求(你可以把这个数字乘以4k就得到由此引起的硬盘数据流量)。Pages/sec 的值很大不一定表明内存有问题,而可能是运行使用内存映射文件的程序所致。

  page read/sec:页的硬故障,page/sec的子集,为了解析对内存的引用,必须读取页文件的次数。阈值为>5. 越低越好。大数值表示磁盘读而不是缓存读。

  由于过多的页交换要使用大量的硬盘空间,因此有可能将导致将页交换内存不足与导致页交换的磁盘瓶径混淆。因此,在研究内存不足不太明显的页交换的原因时,您必须跟踪如下的磁盘使用情况计数器和内存计数器:

  Physical Disk\ % Disk Time

  Physical Disk\ Avg.Disk Queue Length

  例如,包括Page Reads/sec 和% Disk Time 及Avg.Disk Queue Length。如果页面读取操作速率很低,同时% Disk Time 和Avg.Disk Queue Length的值很高,则可能有磁盘瓶径。但是,如果队列长度增加的同时页面读取速率并未降低,则内存不足。

  要确定过多的页交换对磁盘活动的影响,请将Physical Disk\ Avg.Disk sec/Transfer 和Memory\ Pages/sec 计数器的值增大数倍。如果这些计数器的计数结果超过了0.1,那么页交换将花费百分之十以上的磁盘访问时间。如果长时间发生这种情况,那么您可能需要更多的内存。

  Page Faults/sec:每秒软性页面失效的数目(包括有些可以直接在内存中满足而有些需要从硬盘读取)较page/sec只表明数据不能在内存的指定工作集中立即使用。

  Cache Bytes:文件系统缓存(File System Cache),默认情况下为50%的可用物理内存。如IIS5.0 运行内存不够时,它会自动整理缓存。需要关注该计数器的趋势变化

  如果您怀疑有内存泄露,请监视Memory\ Available Bytes 和Memory\ Committed Bytes,以观察内存行为,并监视您认为可能在泄露内存的进程的Process\Private Bytes、Process\Working Set 和Process\Handle Count。如果您怀疑是内核模式进程导致了泄露,则还应该监视Memory\Pool Nonpaged Bytes、Memory\ Pool Nonpaged Allocs 和Process(process_name)\ Pool Nonpaged Bytes。

  Pages per second :每秒钟检索的页数。该数字应少于每秒一页。

21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号