阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

LoadRunner如何监控Tomcat性能

120次阅读
没有评论

共计 3490 个字符,预计需要花费 9 分钟才能阅读完成。

使用 LoadRunner 做性能测试,一般的直觉是 LR 只能完成脚本录制和编写模拟用户的请求行为,但是在某些情况下,要监控一些中间件或 web 服务器的性能时,就不能通过录制脚本来完成了,那么就需要手工来编写脚本,通过 LR 自带的 lr_user_data_point(“”,””) 打点函数进行自定义的监控其性能指标。

这里以监控 Tomcat web 服务器为例。

实现思路:

1、配置 Tomcat 登录用户,找到 tomcat-6.0.37 目录下的 /conf/ tomcat-users.xml,添加配置如下:

<tomcat-users>
<role rolename=”manager-gui”/>
<user username=”monitor” password=”123456″ roles=”manager-gui”/>
</tomcat-users>

(配置 Tomcat 登录用户后,建议测试一下配置的用户登录能否登录进入 Tomcat 管理页面)

2、在 Action 脚本中,使用 web_set_user(“ 用户名 ”,” 密码 ”,”tomcat 服务器所在的 IP 地址: 端口 ”);

3、脚本中编写 web_url(); 模拟访问 Tomcat 的 url 并登录

4、利用关联函数 web_reg_save_parm() 动态地捕获想要的数据

5、最后利用打点函数 lr_user_data_point(“监控指标名”,”监控指标值”); 记录用户自定义的数据样本

VuGen 脚本代码如下:

Action_tomcat()
{

    double atof(const char * string);

    web_reg_save_param(“JVM_FreeMemory”,
                      “LB=Free memory: “,
                      “RB= MB”,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“JVM_TotalMemory”,
                      “LB=Total memory: “,
                      “RB= MB”,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“JVM_MaxMemory”,
                      “LB=Max memory: “,
                      “RB= MB”,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“HTTP_MaxThreads”,
                      “LB=Max threads: “,
                      “RB= “,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“HTTP_MaxProcessingTime”,
                      “LB=Max processing time: “,
                      “RB= s”,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“HTTP_RequestCount”,
                      “LB=Request count: “,
                      “RB= “,
                      “Ord=1”,
                      LAST);

    web_reg_save_param(“HTTP_BytesReceived”,
                      “LB=Bytes received: “,
                      “RB= MB”,
                      “Ord=1”,
                      LAST);

    web_set_user(“monitor”,”123456″,”localhost:8088″);

    lr_think_time(5);

    web_url(“status”,
            “URL=http://localhost:8088/manager/status”,
            “Resource=0”,
            “Referer=”,
            “Snapshot=t1.inf”,
            “Mode=HTML”,
            LAST);

    lr_user_data_point(“Tomcat_JVM_FreeMemory”,atof(lr_eval_string(“{JVM_FreeMemory}”)));

    lr_user_data_point(“Tomcat_JVM_TotalMemory”,atof(lr_eval_string(“{JVM_TotalMemory}”)));

    lr_user_data_point(“Tomcat_JVM_MaxMemory”,atof(lr_eval_string(“{JVM_MaxMemory}”)));

    lr_user_data_point(“Tomcat_HTTP_MaxThreads”,atof(lr_eval_string(“{HTTP_MaxThreads}”)));

    lr_user_data_point(“Tomcat_HTTP_MaxProcessingTime”,atof(lr_eval_string(“{HTTP_MaxProcessingTime}”)));

    lr_user_data_point(“Tomcat_HTTP_ProcessingTime”,atof(lr_eval_string(“{HTTP_ProcessingTime}”)));

    lr_user_data_point(“Tomcat_HTTP_RequestCount”,atof(lr_eval_string(“{HTTP_RequestCount}”)));

    lr_user_data_point(“Tomcat_HTTP_BytesReceived”,atof(lr_eval_string(“{HTTP_BytesReceived}”)));

    return 0;
}

运行脚本,查看回放日志:

LoadRunner 如何监控 Tomcat 性能

脚本编写好(注意:建议将监控 Tomcat 的这段脚本代码放在新插入一个 Action 里面,并且放在之前录制来的业务脚本后面),接下来,优化业务脚本,创建 Controller 等与平时的性能测试流程一样就好了。

在 Controller 监控场景图中,添加“运行时图 - 用户定义的数据点图”

最后在 Analysis 生成结果分析报告中,可以看到“运行时图 - 用户定义的数据点图”是显示有数据的,如图:

LoadRunner 如何监控 Tomcat 性能

注意:这里的 Tomcat_JVM_FreeMemory 和 Tomcat_HTTP_RequestCount 的值会变大些,而 Tomcat_HTTP_MaxThreads、Tomcat_JVM_MaxMemory、Tomcat_HTTP_MaxProcessingTime 等这些值不会变化很大其原因基本上是 tomcat 自身的限制。

结论:可以看出,4~5min 期间存在 tomcat 处理客户端请求瓶颈,后续需要观察其他图进行分析,可能是 CPU 瓶颈。

RedHat Linux 5.5 安装 JDK+Tomcat 并部署 Java 项目  http://www.linuxidc.com/Linux/2015-02/113528.htm 

Tomcat 权威指南 (第二版)(中英高清 PDF 版 + 带书签)  http://www.linuxidc.com/Linux/2015-02/113062.htm 

Tomcat 安全配置与性能优化 http://www.linuxidc.com/Linux/2015-02/113060.htm 

Linux 下使用 Xshell 查看 Tomcat 实时日志中文乱码解决方案 http://www.linuxidc.com/Linux/2015-01/112395.htm 

CentOS 64-bit 下安装 JDK 和 Tomcat 并设置 Tomcat 开机启动操作步骤 http://www.linuxidc.com/Linux/2015-01/111485.htm 

CentOS 6.5 下安装 Tomcat  http://www.linuxidc.com/Linux/2015-01/111415.htm 

Tomcat 的详细介绍 :请点这里
Tomcat 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-07/120526.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计3490字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中