背景
性能压测工具之前使用的是jmeter,这次说的是nGrinder,先直接搬运两者之间的比较
比较点 | JMeter | nGrinder | 结果 |
---|---|---|---|
实现语言 | Java | Java | = |
License | Apache v2 | Apache v2 | = |
使用方式 | C/S或Command | B/S | < |
支持分布式 | master/slave | controller/agent | = |
资源监控 | monitor/plugin,如果二开,需要查找plugin的源码 | monitor方式,有直接可用的源码 | < |
社区活跃度 | 有N个群,文档完善 | 群只有一个,有中文社区 | > |
是否需要编码 | 基本不需要 | 需要,Jython/Groovy | > |
脚本的维护 | 本地 | 内置SVN | < |
脚本录制 | 可使用BadBoy进行录制 | 可通过PTS插件进行录制 | = |
可扩展性 | 可增加plugin,输出结果可以再加工 | 可增加plugin | = |
压测平台编码量 | 大 | 小 | < |
这里还有一个详细的对比: http://qa.blog.163.com/blog/static/19014700220125264628978/
nGrinder采用的controler-agent模式,需要安装controler和agent
安装搭建
官网:https://github.com/naver/ngrinder/releases 下载nGrinder-controler,war格式;
1. 直接使用命令行模式启动(不推荐,有一些问题通过nohup无法启动)
java -XX:MaxPermSize=200m -jar ngrinder-controller-3.4.war --port
本来想着方便,使用
nohup java -XX:MaxPermSize=200m -jar ngrinder-controller-3.4.war --port &
但启动报错,暂时没有解决
2. 使用tomcat
就是把war放在 $TOMCAT_HOME/webapps下,启动tomcat就行
访问地址为:localhost:port/war包名字
小tips,使用ln -s 修改war名字
3. 安装agent
进去到刚刚安装好的ngrinder-controler页面,账号密码使用admin/admin进去,点击下载代理
拿到agent包后,去到agent机器,解压zip,运行run_agent_bg.sh就可以的
4. 安装monitor
像安装agent一样,下载monitor的zip,然后放在想要监控的机器上,解压运行即可
压测demo
1. 新建脚本
2. 设计压测场景
目标主机就是需要监控的机器,点击添加输入ip即可