搭建 nGrinder 性能测试平台 并快速使用

版权声明:原创不易,欢迎分享和转载,同时请注明出处,谢谢! https://blog.csdn.net/lijing742180/article/details/84112782

接上一篇的nGrinder介绍篇

一、nGrinder 组件介绍

1、ngrinder包含Controller、agent 和 monitor 三部分

2、Controller

  • 提供性能测试的web接口
  • 协调测试进程
  • 调整和显示测试的统计结果
  • 让用户创建和修改脚本

3、Agent

  • 在代理服务器上加载运行测试进程和线程
  • 可以部署多台,提升压测能力
  • 最好是能部署在单独的服务器上,如果没有条件的话,也可以跟Controller在一台服务器
  • 但是不能部署在被测服务器上

4、Monitor

  • 用于监控被测服务器的系统性能(例如:CPU/MEMORY)
  • 必须部署在被测服务器上

二、nGrinder 环境搭建

$ java -XX:MaxPermSize=512m -jar ngrinder-controller-3.4.war --port 80
可在下载ngrinder后,直接通过上面的命令运行
也可以通过下面的方式,把war包放在tomcat容器中运行

1、安装JDK,配置环境变量

2、安装Tomcat

3、下载nGrinder:https://github.com/naver/ngrinder/releases

4、把下载好的包放到Tomcat的webApps文件夹中

5、启动Tomcat,并访问nGrinder

clipboard.png


6、安装Agent

  • 登录 nGrinder 管理台,默认账号和密码都是admin,点击右上角,选择 Download Agent(如果使用的是admin帐号登录,下载的agents包中的配置可以分享给所有的用户使用。如果使用非admin帐号登录,下载链接将变成“Download Private Agent” ,下载的agent包中的配置只能当前用户使用)
  • 把 ngrinder-agent 压缩包解压到用作Agent的服务器上,运行 run_agent.sh 即可

7、安装Monitor(需要安装在被测服务器上)

  • 下载Monitor安装包,方法类似Agent
  • 把 ngrinder-monitor 压缩包解压到被测服务器上,运行 run_monitor.sh 即可

补充说明:

  • ngrinder支持开箱即用,不需要额外配置,第一次启动时,系统配置自动生成
  • 默认使用H2数据库,且schema自动创建
  • 版本更新时,数据库schema自动更新
  • agent 、monitor模块从controller下载,无需配置
  • 版本更新时,只需更新controller,agent和monitor会自动更新
  • 在线修改系统配置,多数据修改无需重启
  • 即使用cluster模式,配置也很简单

三、快速使用

1、输入测试URL,选择脚本语言,然后点击开始测试,会自动生成测试脚本并进入配置页面

或者通过点击管理后上方的 script脚本 按钮,进入脚本管理页面,创建脚本,效果相同。

clipboard.png
在创建脚本时,可以选择使用的语言为Groovy或Jython,但是由于这两种语言执行性能上的差别,建议优先使用性能更好的Groovy来编写压测脚本(官方验证相同情况下groovy比jython支持2倍左右的并发数)

2、基本的压测配置

clipboard.png

代理:是指压测所需要的server的数量

虚拟用户有两个指标:

  • 进程数:每个server起多少进程去跑
  • 线程数:每个进程新建的线程数量
  • 并发量=代理数x进程数x线程数

Ramp-Up:设置增量测试,逐渐向最大的的并发量增长,只有勾选该框时,初始数、增量、初始等待时间、进程增长间隔的值才有效

测试时间:表示压测需要持续运行的时间
测试次数:脚本执行的次数,同测试时间二选一

3、运行测试

在配置页面右上角点击保存并运行,启动测试。

4、监控测试,查看结果

当启动测试后,会在页面显示当前的TPS、虚拟用户、测试成功与否的数量等信息。测试完成后,会显示测试结果。

clipboard.png

可以点击详细测试结果查看更详细的信息,比如TPS、平均时间、首次接受数据平均时间,以及被测服务器的CPU,MEM等信息。

猜你喜欢

转载自blog.csdn.net/lijing742180/article/details/84112782