《LoadRunner监控的性能计数器详解》
LoadRunner是一款强大的性能测试工具,它通过监控系统的性能计数器来评估应用程序的性能。本文主要聚焦在Windows操作系统、C/S架构的SQL Server数据库以及Web平台.NET产品的测试中常用的性能计数器。
1. **内存监控**
- **Available Mbytes**: 表示系统当前可用的物理内存,如果值低于4MB,可能意味着内存不足或者某些程序未释放内存。
- **Page/sec**: 描述由于硬件页面错误导致的页面移动频率,过高可能表明频繁的页面交换,影响系统性能。
- **Page Read/sec**: 表示由于页面错误导致的磁盘读取次数,值高则可能提示大量磁盘读操作而非缓存读取。
- **Page Faults/sec**: 包括软性页面失效,反映数据是否能在内存中快速获取。
2. **磁盘性能**
- **% Disk Time**: 磁盘繁忙度,高值可能指示磁盘瓶颈。
- **Avg.Disk Queue Length**: 平均磁盘队列长度,队列长度增加且Page Read/sec不变可能表示内存不足。
- **Physical Disk Avg.Disk sec/Transfer**: 传输每次磁盘操作的平均时间,超过0.1可能暗示页交换占用大量磁盘访问时间。
3. **页面缓存**
- **Cache Bytes**: 文件系统缓存大小,观察其趋势有助于识别内存泄露问题。
4. **处理器利用率**
- **%Processor Time**: 显示处理器消耗的时间,若在sql server专用服务器上,最高不超过80-85%。
5. **进程资源**
- **Process:% Processor Time**: 用于度量处理器被特定进程占用的程度。
- **Page Faults/sec**: 对比系统和进程产生的页面故障,分析进程对系统的影响。
- **Work Set**: 显示每个进程使用的内存页数,反映内存使用状态。
- **Private Bytes**: 进程独占的内存,可能揭示内存泄露问题。
- **Memory Pool Nonpaged Bytes**和**Memory Pool Paged Bytes**: 用于内核模式进程的内存池管理,异常增长可能表示内存泄露。
6. **其他**
- **Pages per second**: 每秒检索的页面数,理想的值应远小于1。
在进行LoadRunner性能测试时,根据上述计数器监控和分析,可以有效地发现并解决系统性能瓶颈,优化系统资源利用,确保应用程序的稳定性和效率。对于Unix平台、Oracle数据库、J2EE架构和WebLogic等其他环境,性能计数器的选择和阈值设定可能有所不同,需要根据具体情况进行调整。分享和交流不同平台的计数器使用经验,将有助于提升整个IT社区的测试水平。