一、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(性能测试工具)-(一)的更多相关文章

  1. 性能测试工具 nGrinder 项目剖析及二次开发

    转:https://testerhome.com/topics/4225 0.背景 组内需要一款轻量级的性能测试工具,之前考虑过LR(太笨重,单实例,当然它的地位是不容置疑的),阿里云的PTS(htt ...

  2. Web Service 性能测试工具比较

    背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力(请求数/秒).以微信服务器为例,每个用户用独立的登录token,做各种操作, ...

  3. 性能测试工具 Web Service 性能测试工具比较

    [转自]https://testerhome.com/topics/3003 背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力 ...

  4. 性能测试工具 wrk 安装与使用

    介绍 今天给大家介绍一款开源的性能测试工具 wrk,简单易用,没有Load Runner那么复杂,他和 apache benchmark(ab)同属于性能测试工具,但是比 ab 功能更加强大,并且可以 ...

  5. 性能测试工具Locust

    An open source load testing tool. 一个开源性能测试工具. define user behaviour with python code, and swarm your ...

  6. 给CentOS6.3 + PHP5.3 安装PHP性能测试工具 XHProf-0.9.2

    一.什么是XHProf XHProf官网:http://pecl.php.net/package/xhprof XHProf是一个分层PHP性能分析工具.它报告函数级别的请求次数和各种指标,包括 阻塞 ...

  7. Android性能测试工具APT使用指南

    腾讯的安卓平台高效的性能测试工具APT(Android Performance Testing Tools),适用于开发自测和定位性能瓶颈,帮助测试人员完成性能基准测试.竞品测试. APT提供了CPU ...

  8. 安卓性能测试工具-GT,安测试

    GT: 是腾讯出品的一款APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE,  Integrated  Debug&Test  Environment).利用GT,仅凭一部 ...

  9. TCP/UDP网络性能测试工具 - Netperf (zz) ..网络测试工具

    在构建或管理一个网络系统时,我们更多的是关心网络的可用性,即网络是否连通,而对于其整体的性能往往考虑不多. 除了netperf以外.       还有很多其它的网络性能测试工具.       如db, ...

  10. pylot是一款开源的web性能测试工具

    pylot是一款开源的web性能测试工具,http://www.pylot.org/ 参考文档:http://www.pylot.org/gettingstarted.html很容易上手 使用分为以下 ...

随机推荐

  1. drf内容总结

    # 1 drf 入门规范 -前后端分离模式 -前后端混合 -postman -restful规范 -drf:django的app # 2 序列化类(重点) -Serializer -字段类 -字段参数 ...

  2. Java--Comparable接口实现,控制数组和列表的排序

    实现Comparable 接口,可以获得的排序方法有 列表排序 Collections.sort(); 数组排序 Arrays.sort(); sort()方法中的参数是可以获取排序索引的对象或者按照 ...

  3. iOS开发 调试技巧

    1.普通断点 2.条件断点 3.全局断点 4.analyze 分析器 5.leaks 检查器 6.僵尸对象 7.lldb 命令 8.instruments 9.xcode视图调试

  4. 靶场练习2:cloudantvirus

    靶场链接 https://www.vulnhub.com/entry/boredhackerblog-cloud-av,453/ 信息收集 练习1用了arp-scan,这种工具有可能会被防火墙流量监测 ...

  5. Linux内核编译中的各类错误示例

    1. do_gettimeofday()函数的使用 linux发行版:Ubuntu22.04 linux内核:5.15.0-52-generic 预编译内核:linux-6.0.1 添加在linux- ...

  6. boost asio 网络编程案例简单改写

    boost教程:http://zh.highscore.de/cpp/boost/ 改写7.4网络编程案例,服务器支持连接多个客户端 服务端: #include <iostream> #i ...

  7. Blockchain for Edge of Things: Applications, Opportunities, and Challenges

    物联网:物联网设备,如传感器和手机,负责从物理环境中生成或收集数据,然后通过接入点或基站传输到附近的边缘服务器(ES).具有某些资源的物联网设备(例如,智能手机和笔记本电脑)可以充当移动区块链实体进行 ...

  8. Neural Network模型复杂度之Batch Normalization - Python实现

    背景介绍 Neural Network之模型复杂度主要取决于优化参数个数与参数变化范围. 优化参数个数可手动调节, 参数变化范围可通过正则化技术加以限制. 本文从参数变化范围出发, 以Batch No ...

  9. iis发布后设置文件夹用户安全权限

    发布iis后异常截图: 401 - Unauthorized: Access is denied due to invalid credentials.You do not have permissi ...

  10. GNN学习(一):基础知识

    1 # !usr/bin/env python 2 # -*- coding:utf-8 _*- 3 # @Time :2022/8/20 10:46 4 # @Author: VVZ 5 # @Fi ...