性能测试之性能监视器(内存篇)

性能测试之性能监视器(内存篇)

吴老的《seleniumwebdriver实战宝典》出版了

性能计数器(counter)是描述服务器或操作系统性能的一些数据指标。计数器在性能测试中发挥着“监控和分析”的关键作用,尤其是在分析系统的可扩展性、进行性能瓶颈的定位时,对计数器的取值的分析非常关键。但必须说明的是,单一的性能计数器只能体现系统性能的某一个方面,对性能测试结果的分析必须基于多个不同的计数器。

  与性能计数器相关的另一个术语是“资源利用率”。该术语指的是系统各种资源的使用状况。为了方便比较,一般用“资源的实际使用/总的资源可用量”形成资源利用率的数据,用以进行各种资源使用的比较。

  性能测试之内存篇(windows)

  要监视内存不足的状况,请从以下的对象计数器开始:

     ·Memory\AvailableBytes

     ·Memory\Pages/sec

  AvailableBytes剩余的可用物理内存,单位是兆字节(参考值:=10%)。表明进程当前可使用的内存字节数。Pages/sec表明由于硬件页面错误而从磁盘取出的页面数,或由于页面错误而写入磁盘以释放工作集空间的页面数。

  如果AvailableBytes的值很小(4MB或更小),则说明计算机上总的内存可能不足,或某程序没有释放内存。如果Pages/sec的值为20或更大,那么您应该进一步研究页交换活动。Pages/sec的值很大不一定表明内存有问题,而可能是运行使用内存映射文件的程序所致。

  操作系统经常会利用磁盘交换的方式提高系统可用的内存量或是提高内存的使用效率。下列四个指标直接反映了操作系统进行磁盘交换的频度。

     PageFaults/sec

  当处理器在内存中读取某一页出现错误时,就会产生缺页中断,也就是pageFault。如果这个页位于内存的其他位置,这种错误称为软错误,用TransitionFault/sec来衡量;如果这个页位于硬盘上,必须从硬盘重新读取,这个错误成为硬错误。硬错误会使系统的运行效率很快将下来。PageFaults/sec这个计数器就表示每秒钟处理的错误页数,包括硬错误和软错误。

     PageInput/sec

  表示为了解决硬错误而写入硬盘的页数(参考值:=PageReads/sec)

     PageReads/sec

  表示为了解决硬错误而从硬盘上读取的页数。(参考值:=5)

     Pages/sec

  表示为了解决硬错误而从硬盘上读取或写入硬盘的页数(参考值:00~20)

  必须同时监视AvailableBytes、Pages/sec和PagingFile%Usage,以便确定是否发生这种情况。如果正在读取非缓存内存映射文件,还应该查看缓存活动是否正常。

     CatheBytes

     文件系统的缓存(默认为50%的可用物理内存)

     内存泄露

     ·Memory\AvailableBytes

     ·Memory\CommittedBytes

  如果您怀疑有内存泄露,请监视Memory\AvailableBytes和Memory\CommittedBytes,以观察内存行为,并监视你认为可能在泄露内存的进程的Process\PrivateBytes、Process\WorkingSet和Process\HandleCount。如果您怀疑是内核模式进程导致了泄露,则还应该监视Memory\PoolNonpagedBytes、Memory\PoolNonpagedAllocs和Process(process_name)\PoolNonpagedBytes。

     privateBytes

  进程无法与其他进程共享的字节数量。该计数器的值较大时,有可能是内存泄露的信号

     检查过于频繁的页交换

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

     ·PhysicalDisk\%DiskTime

     ·PhysicalDisk\Avg.DiskQueueLength

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

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

     研究程序的活动

  接下来,检查正在运行的程序导致的过多的页交换。如果可能,请停止具有最高工作集值的程序,然后查看页交换速率是否有显著变化。如果您怀疑存在过多的页交换,请检查Memory\Pages/sec计数器。该计数器显示由于页面不在物理内存中而需要从磁盘读取的页面数。(注意该计数器与PageFaults/sec的区别,后者只表明数据不能在内存的指定工作集中立即使用。)

(来源:







































上海最好的白癜风医院
北京哪有治疗白癜风医院的地址


转载请注明地址:http://www.yujinxiangqiangzhi.com/rjjs/1509.html


  • 上一篇文章:
  • 下一篇文章:
  • 公司简介 广告合作 发布优势 服务条款 隐私保护 网站地图 版权声明