LoadRunner场景监控

1、场景监控的含义

  •  整个监视过程由控制器来执行并在监控过程中收集相关数据。
  •  LoadRunner 更多的是监控每种服务器资源消耗的情况,对于各种服务器自身的某些特 性需要使用第三方工具监控。
  •  使用负载平衡技术时,负载机首先收集每个虚拟用户运行时的数据,再将这些数据发送 到控制器,由控制器将数据保存在数据库中,最后由分析器来重新整理数据,画成不同 的曲线图。

2、监控系统资源的含义

  •  监控系统资源是为了分析是否由于系统资源引起了性能瓶颈,通常分析内存、硬盘和 CPU。
  •  在 LoadRunner 中,通过添加计数器来监控系统资源。

3、内存计数器(Memory)

关注 Available Bytes、Pages/sec、Page Faults/sec

1)avaliable bytes

 2)Pages/sec

表示每秒出错页的平均数量。

3)Page Faults/sec

  •  表示为解决硬页错误从硬盘读取或写入磁盘的页数。
  •  应该保持 0-20 或接近 0
  •  Pages/sec 的值很大可能是内存问题,应进一步研究内存页交换

4)关于内存泄漏

一般以下两种情况表明出现内存泄漏的情况:

(1)观察内存分配池,如果内存分配池中可用内存消耗是呈不断上升的趋势, 说明可能出现内存泄漏的情况。  建议 7*24 测试;  观察 working set、handle count、private bytes 是否持续上升。

(2)进程分配内存后,但并未将用完的内存回收。

4、CPU计数器

 1 )%Processor Time

  •  表示被消耗的处理器时间百分比。
  •  此值持续高于 80%,说明 CPU 存在压力,需要继续分解以确定用户模式进程(User Time)还是内核模式进程(Privileged Time)消耗的时间更多。

2 )%UserTime

   若%UserTime 占比很大,说明应用程序出了问题,接下来需要确定是哪个进程消耗 了 CPU 的时间。

3 )Processor Queue Length 

  • 表示队列长度,一般不大于 2。 
  • 若 Processor Queue Length 显示的队列长度保持不变(>=2),且处理器的利用率 Processor Time 超过 90%,则很可能存在处理器瓶颈
  •  若发现 Processor queue length 显示的队列长度超过 2,但处理器的利用率却一直很 低,则应该去解决处理器阻塞问题,处理器一般不是瓶颈。

3、 磁盘计数器

 1) %Disk Time

   表示所选磁盘忙于为读或写入请求提供服务所用时间的百分比。正常值小于 10。此值过大表示耗费太多时间来访问磁盘,可考虑增加内存、更换更快的硬 盘、优化读写数据的算法等。

2 )Average Disk Queue Length 

  表示读写请求的平均队列数,正常值小于 0.5。此值过大表示磁盘 I/O 太慢, 需更换更快硬盘。

3 )Average Disk Seconds/Read 

  表示读取数据所需的平均时间

4) Average Disk Seconds/Write

  表示写入数据所需的平均时间。

4、监控Windows

1)被监控程序操作

 2)监控方设置

--》

 ---》添加度量

 --》添加监控计算机的IP

---》输入登录信息

 --》添加度量

-->查看指标

5、监控 Linux

1)被监控程序操作

--》Linux 设置 ip、关闭防火墙

1)关闭防火墙
查看防火墙状态:systemctl status firewalld.service
关闭防火墙:systemctl stop firewalld.service
2)设置ip:vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0 TYPE=Ethernet HWADDR=00:0c:29:fd:27:28 UUID=2e7bc683-1bdb-4843-be9d-a69ded421d11 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.109.128 GATEWAY=192.168.109.1 BROADCAST=192.168.109.255

3)重启网络
service network restart

重启失败
eth0 变成 eth1 后出错的解决方案 ; 当服务器更换完主板或者网卡时经常出现网卡乱序的问题。

 解决方案:

vi /etc/sysconfig/network-scripts/ifcfg-eth0,注释 HWADDR 一行,或 者删除此行 

rm -fr /etc/udev/rules.d/70-persistent-net.rules

重启 Linux

-->按顺序安装 gcc-c++、rsh、rsh-server

安装gcc-c++:
yum install gcc-c++
查询是否安装:
rpm -q gcc-c++
安装rsh、rsh-server
yum -y install rsh rsh-server

-->安装rstatd.tar.gz

解压
tar -zxvf rstatd.tar.gz
进入 rstatd
./configure→make→makeinstall

--》接输入 rpc.rstatd 启动该服务

--》进入/etc/xinetd.d 目录

分别进入文件 rsh、rexec、rlogin,将 disabled=yes 改为 no

--》执行 service xinetd restart ,重启 rsh、rexec、rlogin 服务

service xinetd restart

2)进行监控,其余与监控Windows相同

6、监控 SQL Server

1) SQL Server所在机器

2)

--》监控CPU

Processor Queue Length(处理器的队列长度) 

正常情况下服务器不忙碌的时候不可能出现处理器排队的现象,当处理器出现 排队现象时,则说服务器的性能受到影响,一般情况下处理器的队列长度不超 过 CPU 个数

%UserTime

显示 SQL Server 进程所消耗的 CPU 时间数量。  如果发现 CPU 的使用率过高,通常是高于 85%,那么很有可能是 CPU 出现 瓶颈,接下来需要进一步分析是什么原因导致 CPU 的使用率过高。

SQL Statistics-SQLCompilatlons/sec与SQLRe-Compilations/sec

这两计数器表示执行计划编译与重编译率;  对于一台服务器,执行计划的重用率至少应该在 90%以上,即在执行过程中, 最多只有 10%的查询计划需要重新进行编译,如果当执行过程中需要重新编 译的查询计划过多,那么将导致消耗过高的 CPU 资源。

 ---》监控内存

Buffer Manager-Total Pages、Target Pages 与 stolen pages

 Page Life Expectancy 与 Buffer cache hit ratio

 

 3)监控硬盘

 在执行查询计划过程中,最多的是对磁盘进行写入与读出数据的操作,所以 SQL Server 服务器应该尽可能地避免频繁地在磁盘与内存间进行传递数据,以降低对服 务器性能的影响,为了解决这个问题,SQLServer 使用缓冲高速缓存(Buffercache) 和计划高速缓存(Plancache)。

  • Buffer cache 用于预载数据; 
  • Plan cache 用于加载检索数据的方法是否是最优计划

Full scans/sec

 该计数器表示每秒钟完全扫描索引或完全扫描基本表的数目,在数据库设计过 程中应该尽量降低全表扫描的次数,特别是对于那些大表,如果进行全表扫描 将会直接导致性能下降,如果扫描频率大于一次,则说明缺少索引或索引较差。

Page Splits/sec

该计数器表示每秒钟页面拆分数量,在执行插入或更新计划时,如果当前的数 据页没有足够的空间来完成这些操作,那么就必须增加新页来完成插入或更新 操作,过多的拆分页会损害服务器的性能。

7、监控 Apache

1)安装Apache

--》软件地址

链接:https://pan.baidu.com/s/16FeUm_ZO_Tq7y8rVMrHJKA
提取码:1a81

2)监控

--》

--》添加计算机

-->添加度量

报 错 信 息 : 【 Monitor name :Apache. Parsing error, cannot find token:
BusyServers. Measurement: BusyServers|192.168.109.202. Hints: 1) Such a
measurement does not exist, or the html page may be different from the
supported one. 2) Try to replace the Apache.cfg with appropriate
Apache_<version>.cfg file in <Installation>datmonitors and rerun the
application (entry point: CApacheMeasurement::NewData)

这是由于要监视Apache的版本提供的计数器与LoadRunner默认的计 数器不一致导致的。

1) 先关闭Controller,打开HPLoadRunnerdatmonitors下的 apache.cfg文件

搜索Servers,将Servers替换为Workers,具体如下(

修改Counter0=IdleServers为Counter0=IdleWorkers,同时修改注 释 信 息 Label0=#Idle Servers (Apache) 为 Label0=#Idle Workers (Apache),描述信息也建议修改;

修改Counter4=BusyServers为Counter4=BusyWorkers,同时修改 注 释 信 息 Label4=#Busy Servers (Apache) 为 Label4=#Busy Workers (Apache) ,描述信息也建议修改。

2)重新监控

Apache CPU Usage: 服务器CPU的占用率

Kbytes Sent/sec : 服务器每秒发送的字节数

Hits/sec : Apache服务每秒的点击率

Busy Workers : Apache服务占用率(正在工作数)

ldle Workers : Apache服务空闲率(空闲工作数)

8、监控 MySQL

1)在被测计算机安装mysql

2)在loadrunner所在机器安装jdk、HPSiteScope

-->安装HPSiteScope

 --》点击继续

 --》点击第三项

--》选择安装位置

 --》点击下一步,安装

--》下一步

--》

 --》安装完成

--》访问HP  site Scope 

 http://localhost:8080 

IE 浏览器建议使用 32 位

在弹窗中选择“稍后”,不要阻止

--》点击接受,运行

--》出现如图所示,代表安装配置成功 

 --》复制 mysql 驱动 

将 mysql 驱动程序(mysql-connector-java)拷贝放在 sitescope 安装目录下的 java/lib/ext 下 

重启 SiteScope 服务

在命令行输入services.msc

 找到HP SiteScope,重新启动

--》关闭浏览器,再次打开,输入localhost:8080/

IE 浏览器建议使用 32 位

在弹窗中选择“稍后”,不要阻止

-->接受,运行

SiteScope 设置

1)新建组

 --》输入组名,点击确定

2)新建一个监控器

--》右击组,新建监控器

 --》选择数据库计数器

 --》填写配置

--》选择计数器表单

 常用表单

 

 --》确定,保存

--》新建计数器成功

监控MySQL

1)添加度量

 2)添加监控计算机

 3)选择指标,点击确定

原文地址:https://www.cnblogs.com/ychun/p/14308354.html