LoadRunner结果分析(转载2)

上一篇 / 下一篇  2009-03-10 14:11:56 / 个人分类:LOAD RUNNER

LoadRunner结果分析方法(二)

下面我们来看一下CPU,内存.硬盘的瓶颈分析方法:

首先我们要监视CPU,内存.硬盘的资源情况.得到以下的参数提供分析的依据.

%processor time(processor_total):器消耗的处理器时间数量.如果服务器专用于sql server可接受的最大上限是80% -85 %.也就是常见的CPU使用率.

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

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

%Disk time(physicaldisk_total):指所选磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比。如果三个计数器都比较大,那么硬盘不是瓶颈。如果只有%Disk Time比较大,另外两个都比较适中,硬盘可能会是瓶颈。在记录该计数器之前,请在Windows 2000的命令行窗口中运行diskperf -yD。若数值持续超过80%,则可能是内存泄漏。

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

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

%Disk reads/sec(physicaldisk_total):每秒读硬盘字节数.

%Disk write/sec(physicaldisk_total):每秒写硬盘字节数.

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

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

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

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

Average disk read/write queue length:指读取(写入)请求(列队)的平均数

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

Average disk sec/read:以秒计算的在此盘上读取数据的所需平均时间。

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

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

Page read/sec:每秒发出的物理数据库页读取数。这一统计信息显示的是在所有数据库间的物理页读取总数。由于物理I/O的开销大,可以通过使用更大的数据高速缓存、智能索引、更高效的查询或者改变数据库设计等方法,使开销减到最小。

Page write/sec:(写的页/)每秒执行的物理数据库写的页数。

1.      判断应用程序的问题

如果系统由于应用程序代码效率低下或者系统结构设计有缺陷而导致大量的上下文切换(context switches/sec显示的上下文切换次数太高)那么就会占用大量的系统资源,如果系统的吞吐量降低并且CPU的使用率很高,并且此现象发生时切换水平在15000以上,那么意味着上下文切换次数过高.

从图的整体看.context switches/sec变化不大,throughout曲线的斜率较高,并且此时的context switches/sec已经超过了15000.程序还是需要进一步优化.

2.      判断CPU瓶颈

如果processor queue length显示的队列长度保持不变(>=2)个并且处理器的利用率%Processor time超过90%,那么很可能存在处理器瓶颈.如果发现processor queue length显示的队列长度超过2,而处理器的利用率却一直很低,或许更应该去解决处理器阻塞问题,这里处理器一般不是瓶颈.

%processor time平均值大于95,processor queue length大于2.可以确定CPU瓶颈.此时的CPU已经不能满足程序需要.急需扩展.

3.      判断内存泄露问题

内存问题主要检查应用程序是否存在内存泄漏,如果发生了内存泄漏,process\private bytes计数器和process\working set计数器的值往往会升高,同时avaiable bytes的值会降低.内存泄漏应该通过一个长时间的,用来研究分析所有内存都耗尽时,应用程序反应情况的测试来检验.

图中可以看到该程序并不存在内存泄露的问题.内存泄露问题经常出现在服务长时间运转的时候,由于部分程序对内存没有释放,而将内存慢慢耗尽.也是提醒大家对系统稳定性测试的关注.

附件:

CPU信息

Processor\ % Processor Time获得处理器使用情况。

也可以选择监视Processor\ % User Time% Privileged Time以获得详细信息。

Server Work Queues\ Queue Length计数器会显示出处理器瓶颈。队列长度持续大于4则表示可能出现处理器拥塞。

System\ Processor Queue Length用于瓶颈检测

通过使用Process\ % Processor TimeProcess\ Working Set

Process\ % Processor Time过程的所有线程在每个处理器上的处理器时间总和。

硬盘信息

Physical Disk\ % Disk Time

Physical Disk\ Avg.Disk Queue Length

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

Physical Disk\ % Disk Time

Physical Disk\ Avg.Disk Queue Length

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

请观察Processor\ Interrupts/sec计数器的值该计数器测量来自输入/输出(I/O)设备的服务请求的速度。如果此计数器的值明显增加,而系统活动没有相应增加,则表明存在硬件问题。

Physical Disk\ Disk Reads/sec and Disk Writes/sec

Physical Disk\ Current Disk Queue Length

Physical Disk\ % Disk Time

LogicalDisk\ % Free Space

测试磁盘性能时,将性能数据记录到另一个磁盘或计算机,以便这些数据不会干扰您正在测试的磁盘。

可能需要观察的附加计数器包括Physical Disk\ Avg.Disk sec/TransferAvg.Disk Bytes/TransferDisk Bytes/sec

Avg.Disk sec/Transfer计数器反映磁盘完成请求所用的时间。较高的值表明磁盘控制器由于失败而不断重试该磁盘。这些故障会增加平均磁盘传送时间。对于大多数磁盘,较高的磁盘平均传送时间是大于0.3秒。

也可以查看Avg.Disk Bytes/Transfer的值。值大于20 KB表示该磁盘驱动器通常运行良好;如果应用程序正在访问磁盘,则会产生较低的值。例如,随机访问磁盘的应用程序会增加平均Disk sec/Transfer时间,因为随机传送需要增加搜索时间。

Disk Bytes/sec提供磁盘系统的吞吐率。

决定工作负载的平衡

要平衡网络服务器上的负载,需要了解服务器磁盘驱动器的繁忙程度。使用Physical Disk\ % Disk Time计数器,该计数器显示驱动器活动时间的百分比。如果% Disk Time较高(超过90%),请检查Physical Disk\ Current Disk Queue Length计数器以查看正在等待磁盘访问的系统请求数量。等待I/O请求的数量应当保持在不大于组成物理磁盘的主轴数的1.52倍。

尽管廉价磁盘冗余阵列(RAID)设备通常有多个主轴,大多数磁盘有一个主轴。硬件RAID设备在系统监视器中显示为一个物理磁盘;通过软件创建的RAID设备显示为多个驱动器(实例)。可以监视每个物理驱动器(而不是RAID)的Physical Disk计数器,也可以使用_Total实例来监视所有计算机驱动器的数据。

使用Current Disk Queue Length% Disk Time计数器来检测磁盘子系统的瓶颈。如果Current Disk Queue Length% Disk Time的值始终较高可以考虑升级磁盘驱动器或将某些文件移动到其他磁盘或服务器。

 


TAG:

 

评分:0

我来说两句

日历

« 2024-04-24  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 29257
  • 日志数: 33
  • 文件数: 2
  • 建立时间: 2008-09-03
  • 更新时间: 2009-11-12

RSS订阅

Open Toolbar