nGrinder 简易使用教程
背景
性能压测工具之前使用的是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即可
nGrinder 简易使用教程的更多相关文章
- 【转】nGrinder 简易使用教程
https://www.cnblogs.com/jwentest/p/7136727.html 背景 性能压测工具之前使用的是jmeter,这次说的是nGrinder,先直接搬运两者之间的比较 比较点 ...
- Git GUI简易使用教程
Git GUI简易使用教程:先上图~~~~~ 一. 先从添加文件开始讲(先上图): 1.选中要添加的文件,点击菜单栏的“提交”,选中“缓存为提交”,
- Android简易实战教程--第五十一话《使用Handler实现增加、减少、暂停计数》
转载博客请注明出处:道龙的博客 之前,写过一篇使用异步任务AysncTask实现倒计时的小案例,喜欢的话可以参考博客:Android简易实战教程--第三十三话< AsyncTask异步倒计时&g ...
- Android简易实战教程--第五十话《动画扫描》
祝新年快乐!2017(一起)前行. 转载博客请注明出处:道龙的博客 本篇简答的小案例,使用动画知识,完成一个类似雷达扫描效果,并且加入自定义进度条.对于自定义进度条前面有很详细的解析和案例了,本篇就结 ...
- Android简易实战教程--第十六话《SharedPreferences保存用户名和密码》
之前在Android简易实战教程--第七话<在内存中存储用户名和密码> 那里是把用户名和密码保存到了内存中,这一篇把用户名和密码保存至SharedPreferences文件.为了引起误导, ...
- Web压力测试工具 LoadRunner12.x简易入门教程--(一)回放与录制
LoadRunner12.x简易入门教程--(一)回放与录制 今天在这里分享一下LoadRunner12.x版本的入门使用方法,希望对刚接触LoadRunner的童鞋有所帮助. LoadRun ...
- Qt QBarSeries简易柱状图教程
博客园最强Qt QBarSeries简易柱状图教程 前情提要 每个人的绘图需求不同,此篇教程也是根据需求来改的.我的需求大概如下所示. 通过信号槽的方式接收signals来刷新柱状图,所以每次触发信号 ...
- Webpack简易入门教程
<!-- 其实网上关于webpack的教程已经很多了,但是本人在学习过程中发现很多教程有错误,或者写的很不全面,结果做的过程出现各种各样的问题,对新手不但不友好还会让人浪费很多不必要的时间.所以 ...
- Lua简易入门教程
环境:lua for windows (lfW)主页:http://luaforwindows.luaforge.net/https://code.google.com/p/luaforwindows ...
随机推荐
- [HDU1512/ZOJ2334]Monkey King-左偏树-可合并堆
Problem Monkey King Solution 本题是裸的左偏树,一个模板就可以过了.对于每个操作对节点先删除/2再合并. 注意本题在HDU上评测特别坑,是多组数据,而且经常出现MLE的情况 ...
- CJOJ 1943 【重庆八中模拟赛】寻找代表元(二分图最大匹配)
CJOJ 1943 [重庆八中模拟赛]寻找代表元(二分图最大匹配) Description 八中一共有n个社团,分别用1到n编号. 八中一共有m个人,分别用1到m编号.每个人可以参加一个或多个社团,也 ...
- C# TSC打印二维码和条形码
效果图 开发.使用环境说明 安装TSC_7.3.8_M-3.exe打印机驱动,安装时选择对应的ttp 244 pro 将TSCLIB.dll复制到C:\Windows\system 驱动安装说明 选择 ...
- PHP中定义常量define与const
我们通常把不经常变的值定义成常量,常量一般用全部大写来表示,前面不加美元符号,也可减少团队开发的出错.那么define和const有什么区别呢? 1.const是一个语言结构:而define是一个函数 ...
- Android5.1 - 通讯录建立群组
[问题] 在没有账户的时候,不应该有添加联系人群组的选项. 我们要把这个选项干掉. [相关log]06-23 17:25:00.804: E/GroupEditorFragment(6030): No ...
- python之基本内容
这里提供在使用python进行开发中常使用到的方法技巧,如有不对欢迎批评指正. 要点:开发中类.变量特性查询,类型就是类,断言的使用,深浅复制判断等 python脚本文件是使用UTF-8编码的,所以在 ...
- 创建 Machine - 每天5分钟玩转 Docker 容器技术(46)
对于 Docker Machine 来说,术语 Machine 就是运行 docker daemon 的主机.“创建 Machine” 指的就是在 host 上安装和部署 docker.先执行 doc ...
- [node] node 版本更新
一. 命令 node -v sudo npm cache clean -f // 清除缓存 sudo npm install -g n // 安装Node 模块 sudo n stable // 升级 ...
- 【LINUX】主进程、父进程、子进程、守护进程的概念
一.摘要 详解父进程.子进程.守护进程的区别,例子稍候补充 二.定义区别 主进程 程序执行的入口,可以理解为常用的main 函数 父进程 对于子进程而言, 子进程的创造者,可有多个子进程. 任何进程都 ...
- React 实践项目 (五)
React在Github上已经有接近70000的 star 数了,是目前最热门的前端框架.而我学习React也有一段时间了,现在就开始用 React+Redux 进行实战! React 实践项目 (一 ...