ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Ngrinder(性能测试工具)-(一)

2022-05-30 13:00:26  阅读:218  来源: 互联网

标签:性能 端口 Agent Controller Ngrinder 测试 测试工具 服务器 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来执行。并在执行的过程中,收集运行情况、响应时间、测试目标服务器的运行情况等,并保存数据生成报告。

 

标签:性能,端口,Agent,Controller,Ngrinder,测试,测试工具,服务器,ngrinder
来源: https://www.cnblogs.com/xingzhifeng/p/16326219.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有