Ngrinder(性能测试工具)-(一)
一、ngrinder介绍
nGrinder 是基于Grinder开源项目,由NHN公司的开发团队进行了重新设计和完善。
nGrinder 是一款非常易用,有简洁友好的用户界面 和 controller-agent分布式结构的强大的压力测试工具,能够执行性能测试和监控目标服务器,并生成结果。
在ngrinder 3.x版本开始,支持多用户并发测试。目前是3.5.x版本。可以通过录制方式,生成jython和groovy语言的脚本。也可以,自己编写,导入进来
脚本语言:jpthon(python+java) groovy(java衍生)
官方网站:https://naver.github.io/ngrinder/
最新发布版本:https://github.com/naver/ngrinder/releases
二、ngrinder特点
(1)一款非常易用
(2)web管理台界面
(3)controller-agent代理可以实现分布式结构
(4)ngrinder理论上,虚拟用户数是无限,官方说法,在4g内存时,可以支持 4k并发用户数
(5)执行性能测试+目标服务器监控
三、ngrinder 组成
ngrinder 主要由三部分组成:控制器Controller、代理agent、监听器monitor:
1、Controller控制器:
(1)提供web管理界面;
(2)让用户创建、修改脚本,
(3)维护性能测试场景,执行性能测试,
(4)整理和显示测试统计数据。
(5)管理Agent
(6)对外服务的端口:默认8080
(7)内部服务端口:默认为16001
(8)Controller的服务端口,要看具体启动方式,如果采用tomcat,则服务端口为8080。
(9)ControllerServer端口默认为16001,Agent代理启动时,会自动请求连接该端口。
2、Agent代理:
(1)代理==助攻机器==压力机
(2)agent是不能安装在被测服务器上
(3)服务端口:12000~12029
(4)使用进程或线程模式执行性能测试。
(5)在执行性能测试时,会开启12000~12029区间的端口。
3、监听器monitor:
(1)监视被测服务器资源使用情况
(2)需要安装在被测服务器上
(3)监视目标服务器资源使用情况,常被部署在目标服务器上。默认端口13243。
四、ngrinder工作原理

图中数字表示含义:
0:Controller控制器和Agent代理,启动后保持连接;
1:用户在控制器中发起性能测试请求;
2:Controller控制器就会去获取控制台信息;
3:再去获取代理。服务信息;
4:确定具体的代理服务器信息;
5:然后控制台就会向代理服务分发性能脚本与场景,进行性能测试;
6:向被测服务器发起请求,同时监听器监听被测服务器资源使用情况;
概述:
(1)它由 一个Controller 和 与它相连的 多个 Agent 组成。用户通过web界面管理和控制测试,以及查看测试报告。
(2)Controller 会把测试分发到 每个Agent上去执行,用户可以在web管理界面中,设置 多个使用 多个线程 或 进程来并发的执行脚本。
(3)nGrinder的脚本是python语言写的。Controller把这些脚本分发到各个Agent中,然后用Jython来执行。并在执行的过程中,收集运行情况、响应时间、测试目标服务器的运行情况等,并保存数据生成报告。
Ngrinder(性能测试工具)-(一)的更多相关文章
- 性能测试工具 nGrinder 项目剖析及二次开发
转:https://testerhome.com/topics/4225 0.背景 组内需要一款轻量级的性能测试工具,之前考虑过LR(太笨重,单实例,当然它的地位是不容置疑的),阿里云的PTS(htt ...
- Web Service 性能测试工具比较
背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力(请求数/秒).以微信服务器为例,每个用户用独立的登录token,做各种操作, ...
- 性能测试工具 Web Service 性能测试工具比较
[转自]https://testerhome.com/topics/3003 背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力 ...
- 性能测试工具 wrk 安装与使用
介绍 今天给大家介绍一款开源的性能测试工具 wrk,简单易用,没有Load Runner那么复杂,他和 apache benchmark(ab)同属于性能测试工具,但是比 ab 功能更加强大,并且可以 ...
- 性能测试工具Locust
An open source load testing tool. 一个开源性能测试工具. define user behaviour with python code, and swarm your ...
- 给CentOS6.3 + PHP5.3 安装PHP性能测试工具 XHProf-0.9.2
一.什么是XHProf XHProf官网:http://pecl.php.net/package/xhprof XHProf是一个分层PHP性能分析工具.它报告函数级别的请求次数和各种指标,包括 阻塞 ...
- Android性能测试工具APT使用指南
腾讯的安卓平台高效的性能测试工具APT(Android Performance Testing Tools),适用于开发自测和定位性能瓶颈,帮助测试人员完成性能基准测试.竞品测试. APT提供了CPU ...
- 安卓性能测试工具-GT,安测试
GT: 是腾讯出品的一款APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug&Test Environment).利用GT,仅凭一部 ...
- TCP/UDP网络性能测试工具 - Netperf (zz) ..网络测试工具
在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多. 除了netperf以外. 还有很多其它的网络性能测试工具. 如db, ...
- pylot是一款开源的web性能测试工具
pylot是一款开源的web性能测试工具,http://www.pylot.org/ 参考文档:http://www.pylot.org/gettingstarted.html很容易上手 使用分为以下 ...
随机推荐
- SAP 交货单抬头客制化界面以及字段
需求 因为涉及系统之间的家伙但传输,方便业务查看该交货单是否已经发送,因此再交货单的抬头页面进行增强,给出一个是否发送的字段显示.如下: 业务加载项 LE_SHP_TAB_CUST_HEAD se19 ...
- AI步枪
最近正在看利用深度学习进行图像处理的资料,神经网络的确是太枯燥了,看不下去了就刷会手机.这几天推荐给我的新闻都是漂亮国又发生校园枪击事件了,不知道推荐算法是怎么认定我对这个话题感兴趣的.这算是老生常谈 ...
- 字符类型(char)
字符类型(char) 基本介绍 字符类型可以表示`单个字符`,字符类型是char,char是两个字节(可以存放汉字),多个字符我们用字符串String(我们后面详细讲解String) 案例演示 //演 ...
- ns 状态为Terminating
kubectl delete ns harbor --force --grace-period=0harbor状态为Terminatingkubectl proxy --port=6880kubect ...
- 关于JMeter WebSocket插件:JMeter WebSocket插件-关闭SignalR连接--webSocket Close报错
在浦发银行的项目中,主机运维连接成功不做任何操作的场景中,用到了webSocket协议,但是脚本运行中出现webSocke Close报错--解决方案:在webSocket Open Connecti ...
- js区分图片加载中和加载完成状态
var _ent = document.getElementById("test"); if (_ent.complete) { //图片已经加载完成 _ent.stop(); } ...
- Spring的AOP源码解析(一)
Spring AOP 使用介绍,从前世到今生 前面写过 Spring IOC 的源码分析,很多读者希望可以出一个 Spring AOP 的源码分析,不过 Spring AOP 的源码还是比较多的,写出 ...
- 【Go】时间
mysql中的datetime转时间戳 // 获取mysql中的datetime类型转时间戳 t := "2023-02-21T14:51:00+08:00" ts, _ := t ...
- c语言中定义局部变量不赋初值默认
C语言中定义局部变量不赋初值默认为随机数,全局变量定义时候不赋初值默认为0. 但是在keil3中我发现不管全局变量还是局部变量都默认是0.
- 关于MYSQL知识点复习
关于MYSQL关联查询JOIN: https://www.cnblogs.com/withscorpion/p/9454490.html