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

  问题描述: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. 综合以上这些内容分析,相信会有很多排列组合。由于参数组合及应用的复杂性,说性能的高低标准实在很难一概而论。只能就事论事,依照情况分析。

  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,以观察内存行为,并监视您认为可能在泄露内存的进程的ProcessPrivate Bytes、ProcessWorking Set 和ProcessHandle Count。如果您怀疑是内核模式进程导致了泄露,则还应该监视MemoryPool Nonpaged Bytes、Memory Pool Nonpaged Allocs 和Process(process_name) Pool Nonpaged Bytes。

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

  Process:

  %Processor Time: 被处理器消耗的处理器时间数量。如果服务器 style="COLOR: #000000" href="http://server.it168.com/" target=_blank>服务器专用于sql server,可接受的最大上限是80-85%

  Page Faults/sec:将进程产生的页故障与系统产生的相比较,以判断这个进程对系统页故障产生的影响。

  Work set: 处理线程最近使用的内存页,反映了每一个进程使用的内存页的数量。如果服务器有足够的空闲内存,页就会被留在工作集中,当自由内存少于一个特定的阈值时,页就会被清除出工作集。

  Inetinforivate Bytes:此进程所分配的无法与其它进程共享的当前字节数量。如果系统性能随着时间而降低,则此计数器可以是内存泄漏的最佳指示器。

  Processor:监视“处理器”和“系统”对象计数器可以提供关于处理器使用的有价值的信息,帮助您决定是否存在瓶颈。

  %Processor Time:如果该值持续超过95%,表明瓶颈是CPU。可以考虑增加一个处理器或换一个更快的处理器。

  %User Time:表示耗费CPU的数据库操作,如排序,执行aggregate functions等。如果该值很高,可考虑增加索引,尽量使用简单的表联接,水平分割大表格等方法来降低该值。

  %Privileged Time:(CPU内核时间)是在特权模式下处理线程执行代码所花时间的百分比。如果该参数值和"hysical Disk"参数值一直很高,表明I/O有问题。可考虑更换更快的硬盘系统。另外设置Tempdb in RAM,减低"max async IO","max lazy writer IO"等措施都会降低该值。

  此外,跟踪计算机的服务器工作队列当前长度的Server Work Queues Queue Length 计数器会显示出处理器瓶颈。队列长度持续大于4 则表示可能出现处理器拥塞。此计数器是特定时间的值,而不是一段时间的平均值。

  % DPC Time:越低越好。在多处理器系统中,如果这个值大于50%并且Processor:% Processor Time非常高,加入一个网卡可能会提高性能,提供的网络已经不饱和。

  Thread

  ContextSwitches/sec: (实例化inetinfo 和dllhost 进程) 如果你决定要增加线程字节池的大小,你应该监视这三个计数器(包括上面的一个)。增加线程数可能会增加上下文切换次数,这样性能不会上升反而会下降。如果十个实例的上下文切换值非常高,就应该减小线程字节池的大小。

  Physical Disk:

  %Disk Time %:指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比。

  如果三个计数器都比较大,那么硬盘不是瓶颈。如果只有%Disk Time比较大,另外两个都比较适中,硬盘可能会是瓶颈。在记录该计数器之前,请在Windows 2000 的命令行窗口中运行diskperf -yD。若数值持续超过80%,则可能是内存泄漏。

  Avg.Disk Queue Length:指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。该值应不超过磁盘数的1.5~2 倍。要提高性能,可增加磁盘。注意:一个Raid Disk实际有多个磁盘。

  Average Disk Read/Write Queue Length:指读取(写入)请求(列队)的平均数。

  Disk Reads(Writes)/s: 物理磁盘上每秒钟磁盘读、写的次数。两者相加,应小于磁盘设备最大容量。

  Average Disksec/Read: 指以秒计算的在此盘上读取数据的所需平均时间。

  Average Disk sec/Transfer:指以秒计算的在此盘上写入数据的所需平均时间。

  Network Interface:

  Bytes Total/sec :为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较。

时间: 2024-11-03 05:48:16

使用LoadRunner进行资源占用率的分析的相关文章

安装Windows 8后CPU资源占用率户达到100%怎么办

解决方案: 1.驱动没有经过认证,造成CPU资源占用100%.大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因. 2.防.杀毒软件造成故障.由于一些防.杀毒软加入了对网页.插件.邮件的随机监控,无疑增大了系统负担,可以根据情况有选择的开启服务. 3.病毒.木马造成.大量的蠕虫病毒在系统内部迅速复制,造成CPU占用资源率据高不下.解决办法:使用最新的杀毒软件在DOS模式下进行杀毒.经常性更新升级杀毒软件和防火墙,加强防毒意识,掌握正确的防杀毒知识. 4.开始---运行---msconfig-

使用 nice、cpulimit 和 cgroups 限制 cpu 占用率

使用 nice.cpulimit 和 cgroups 限制 cpu 占用率 Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的正常运转. 同时,内核也很公正:它将资源公平地分配给各个进程. 但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一个进程的优先级? 又或者,如何限制一组进程所使用的资源呢? 答案是需要由用户来为内核指定进程的优先级 大部分进程启动时的优先级是相同的,因此Linux内核会公平地进行调度. 如果想让一个CPU密集

Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算

目录(?)[-] proc文件系统 proccpuinfo文件 procstat文件 procpidstat文件                                           procpidtasktidstat文件 系统中有关进程cpu使用率的常用命令 ps 命令 top命令 单核情况下Cpu使用率的计算 基本思想 总的Cpu使用率计算 计算方法 某一进程Cpu使用率的计算 计算方法   实验数据 某一线程Cpu使用率的计算 计算方法   实验数据 多核情况下cpu使用率

CPU占用率一直很高怎么办

Windows XP CPU占用100%情况分析解决   我们在使用Windows XP操作系统的时候,用着用着系统就变慢了,一看"任务管理器"才发现CPU占用达到100%.这是怎么回事情呢?遇到病毒了,硬件有问题,还是系统设置有问题,在本文中笔者将从硬件,软件和病毒三个方面来讲解系统资源占用率为什么会达到100%. 经常出现CPU占用100%的情况,主要问题可能发生在下面的某些方面: CPU占用率高的九种可能 1.防杀毒软件造成故障 由于新版的KV.金山.瑞星都加入了对网页.插件.邮

CPU占用率高的九种可能

经常出现CPU占用100%的情况,主要问题可能发生在下面的某些方面: CPU占用率高的九种可能 1.防杀毒软件造成故障 由于新版的KV.金山.瑞星都加入了对网页.插件.邮件的随机监控,无疑增大了系统负担.处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务吧,者,升级你的硬件配备. 2.驱动没有经过认证,造成CPU资源占用100% 大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因. 处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号.版本. 3

在Linux系统中限制CPU占用率的教程

  Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的正常运转. 同时,内核也很公正:它将资源公平地分配给各个进程. 但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一个进程的优先级? 又或者,如何限制一组进程所使用的资源呢? 答案是需要由用户来为内核指定进程的优先级 大部分进程启动时的优先级是相同的,因此Linux内核会公平地进行调度. 如果想让一个CPU密集型的进程运行在较低优先级,那么你就得事先配置好调度器. 下面介绍3种控制

Win8、Win8.1系统下硬盘占用率100%的问题怎么解决

  知识点分析: 1. 关闭家庭组 2. 关闭虚拟内存 3. 关闭Windows 8快速开机功能 4. 服务进程superfetch 5. 系统下软件排除 操作步骤: 1. Windows 8系统的家庭组方便多人不用存储设备就能在局域网中的多台设备间方便地分享文件与文件夹,但对于配置一般的电脑来说,家庭组功能其实也带来了一些副作用:提升CPU占用,硬盘读写增多.打开家庭组功能后后,硬盘会一直保持读写状态. 关闭家庭组功能: 右击"计算机",选择管理; 在"服务和应用程序&qu

为什么CPU占用率达到了100%?

  CPU占用率高的九种可能: 1.防杀毒软件造成故障 由于新版的KV.金山.瑞星都加入了对网页.插件.邮件的随机监控,无疑增大了系统负担.处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务吧,或者,升级你的硬件配备. 2.驱动没有经过认证,造成CPU资源占用100% 大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因. 处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号.版本. 3.病毒.木马造成 大量的蠕虫病毒在系统内部迅速复制,造成CPU

CPU占用率高的N种原因_服务器

1.防杀毒软件造成故障  由于新版的KV.金山.瑞星都加入了对网页.插件.邮件的随机监控,无疑增大了系统负担.处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务吧,或者,升级你的硬件配备.  2.驱动没有经过认证,造成CPU资源占用100%  大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因. 处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号.版本.  3.病毒.木马造成  大量的蠕虫病毒在系统内部迅速复制,造成CPU占用资源率据高不下.解