目录
- 一、ngrinder
- 1.安装ngrinder
- 2.介绍ngrinder
- 二、ngrinder的部署
- 1.下载的包是war包。用什么方式部署?
- 2.查看防火墙的状态
- 3.检查网络
- 4.通过浏览器来访问
- 5.配置ngrinder-agent
- 6.性能测试
- 三、补充
一、ngrinder
1.安装ngrinder
下载地址:
输入命令:wget https://github.com/naver/ngrinder/releases/download/ngrinder-3.5.2-20200929/ngrinder-controller-3.5.2.war
github下载太慢,网盘自取:https://pan.baidu.com/s/1jziq5oJqbFZYuSfIbpe2mQ?pwd=1234 提取码:1234
当然新建一个ngrinder文件夹,对应的包放在对应的文件夹下。启动的时候也要找到对应路径下启动。
2.介绍ngrinder
nGrinder是一款非常易用,有简洁友好的用户界面和controller-agent分布式结构的强大的压力测试工具,它的脚本,支持Jython、Groovy两种语言。这个工具的代码是开源的。
它由一个Controller和与它相连的多个Agent组成。用户通过Web界面管理和控制测试,以及查看测试报告。
通过web管理台把脚本生成出来,脚本发送给agent代理,agent代理来执行脚本,通过agent代理向被测服务器发起请求。
ngrinder:
- ngrinder-controller:管理(管理的界面、管理的配置)。
- 测试脚本:自动生成、+ 手动修改(groovy 、jython)。
- groovy:java的衍生语言(有python基础的同学,去学习),比java容易学。
- jython:java+ python ===python的脚本丢到jvm虚拟机中运行。
- ngrinder-agent:代理,压力机。
- 目标机器====被测项目。
一个ngrinder-controller可以管理多个代理。
二、ngrinder的部署
这个工具是java语言开发的,依赖java运行环境,jre、jdk。ngrinder的版本,选择使用3.x版本,不要使用低于3的版本。
ngrinder3.x版本,jdk必须是1.8及以上,不能低于1.8。
1.下载的包是war包。用什么方式部署?
1.首先想到用tomcat。速度比较慢, 大概要2分钟左右,才能启动正常。
2.ngrinder-controller使用微服务框架spring-boot开发,直接使用java -jar ngrinder-controller-3.5.2.war
这个命令启动。--推荐。
默认端口:8080。
2.查看防火墙的状态:
输入:[root@centos7 ~]# systemctl status firewalld
查看防火墙的状态:防火墙已经关闭。
3.检查网络:
输入:telnet 192.168.206.138 8080
可以看到:网络是通的,可以访问。
4.通过浏览器来访问:
http://ngrinder_ip:8080/
输入:http://192.168.206.138:8080/
账号和密码:admin
语言可以选择中文。
创建脚本:
- 菜单栏:脚本-->创建脚本。
- 脚本名称:选择语言:groovy、jython 、groovy maven project,别名。
- 选择请求方法,填写URL地址。
- 高级选项:Content-Type:application/json。写上body。
5.配置ngrinder-agent:
web管理的登录名-->下载代理。这种方法下载的代理,agent的配置文件,已经修改,不需要再次修改。
如果不是这种方法下载,那么就要修改agent.conf配置文件中controller的ip地址。
下载的代理tar包,上传到linux服务器上。
解压tar包:tar -xvf ngrinder-agent-xxxxx.tar
agent部署在非被测服务器(ngrinder-controller)
上。
# sh 结尾的是linux文件。
./run_agent.sh # 交互模式运行。
./run_agent_bg.sh # 后台运行。
./run_agent_internal.sh # 第一次运行使用这个,是初始化运行。
启动,输入:./run_agent_internal.sh
可以看到:有一个代理的机器了。
6.性能测试:
- 菜单-->性能测试。
- 目标主机:被测服务器的ip地址或域名。---千万不要忘记填写。
ngrinder进行性能测试:是进程 + 线程
的组合模式。
三、补充
通过XShell上传文件到Linux服务器上:
文章中的图片,皆为小编本人所画所截图,文章中链接的版权归原作者所有,计算机知识都一样,如有雷同,纯属巧合。「文章是清菡编写的,如有转载,请标明出处!」