nGrinder 介绍与安装
nGrinder是基于Grinder开源项目,但由NHN公司的nGrinder开发团队进行了重新设计和完善(所以叫做nGrinder)。
它是由一个controller和连接它的多个agent组成,用户可以通过web界面管理和控制测试,以及查看测试报告,controller会把测试分发到一个或多个agent去执行。用户可以设置使用多个进程和线程来并发的执行该脚本,而且在同一线程中,来重复不断的执行测试脚本,来模拟很多并发用户。
nGrinder的测试是基于一个python的测试脚本,用户按照一定规则编写测试脚本以后,controller会将脚本以及需要的其他文件分发到agent,用Jython执行。并在执行过程中收集运行情况、响应时间、测试目标服务器的运行情况等。并保存这些数据生成运行报告,以供以后查看。
为什么选择nGrinder
JMeter
Tsung
Locust
Loadrunner
nGrinder
综上可以看出nGrindr还是有很多优势的。
总体架构
nGrinder 由两个主要的组件组成:
Controller:
提供性能测试的web接口。
Agent:
在代理服务器上加载运行测试进程和线程
当 agent 启动时,它们试图连接到 controller,然后他们都附属在 AgentControllerServer 组件上。AgentControllerServer (可以看做为一个 agent 的池)管理当前 agent 池。每当用户开始性能测试时,一个新的 console 被创建,同时由 AgentControllerServer 提供所需数量的 agent。 SingleConsole (不是 Grinder 中的 Console ) 发送测试脚本和测试源码到多个指定的 agent , 同时开始控制测试流,直到测试结束。当测试完成后,所使用的 agents 归还给 AgentControllerServer ,以便在以后的其他测试中使用。 同样,SingleConsole 也会归还给 ConsoleManager 。
nGrinder 和 Grinder 最大的区别在于 nGrinder 在 controller 中保持多个 console 实例 和 agent 。每个 console 都是独立的,所有 console 都可以同时运行。每当有需要时,许多 agent 可以提前被提前关联和分配。与 grinder 不同,nGrinder 最大化 agent 机器的利用率。
ngrinder中文社区
http://ngrinder.642.n7.nabble.com/ngrinder-user-cn-f114.html
nGrinder安装
3台linux服务器:
先决条件
nGrinder是一个web应用(Controller)和Java应用(Agent, Monitor)的组合,需要安装JDK 1.6或更高的版本。
nGrinder需要用到很多端口
Agent : Any ==> Controller : 16001
下载nGrinder
目前最新的版本是ngrinder3.4.1
启动nGrinder
建议使用tomcat,把war包放在tomcat的webapps文件夹下即可.
JAVA_OPTS=”-Xms600m -Xmx1024m -XX:MaxPermSize=200m”
启动后,打开浏览器访问http://localhost:8080/ngrinder-controller-X.X
我这里问:http://192.168.42.164:8080/ngrinder-controller-3.4.1/login,登录名/密码:admin/admin
安装agent
agent在controller页面中直接下载
因为使用的是admin帐号登录,下载的agents包中的配置可以分享给所有的用户使用。
下载后,把agent放在服务器上,解压
启动前检查 ulimt -a ,调整配置让其运行更多的线程,执行bash run_agent.sh 启动agent。
安装monitor
nGrinder的Monitor是agent的一个子集,用于收集系统相关数据(比如CPU, MEM and Network)
agent在controller页面中直接下载
下载后,把monitor放在服务器上,解压
执行bash run_monitor.sh启动monitor
安装完测试
nGrinder运行一个压力测试只需3步:
编写测试脚本
场景设计:配置并发用户数,执行时间,资源监控
场景执行,结束后自动生成报告
这里测试一个简单的get请求:http://192.168.42.32:82/sourcing/tradeservice/quotation-request.html
第一步,编写测试脚本
登录ngrinder,输入url,点击开始测试
第二步,场景设计
填写相应场景信息,如并发用户数,场景执行时间等
第三步,场景执行
点击保存并运行按钮,开始场景执行
原文链接:http://tonylit.me/2017/03/23/ngrinder介绍与安装/
nGrinder 介绍与安装的更多相关文章
- 从零自学Hadoop(19):HBase介绍及安装
阅读目录 序 介绍 安装 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一篇, ...
- 从零自学Hadoop(14):Hive介绍及安装
阅读目录 序 介绍 安装 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 本系列已 ...
- Python之路-python(mysql介绍和安装、pymysql、ORM sqlachemy)
本节内容 1.数据库介绍 2.mysql管理 3.mysql数据类型 4.常用mysql命令 创建数据库 外键 增删改查表 5.事务 6.索引 7.python 操作mysql 8.ORM sqlac ...
- Bash on Windows 抢鲜测试 -- 介绍及安装
前言 微软在上周的Windows BUILD大会上宣布,WIN10将引入原生Bash,并将很快在技术预览版中推出. 如此一来,windows的命令行工具就不再只有cmd和powershell了,我们可 ...
- Tyk API网关介绍及安装说明
Tyk API网关介绍及安装说明 Tyk是一个开源的轻量级API网关程序. 什么是API网关 API网关是一个各类不同API的前置服务器.API网关封装了系统内部架构,对外提供统一服务.此外还可以实现 ...
- Python介绍、安装、使用
Python介绍.安装.使用 搬运工:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Python语言介绍 说到Python语言,就不得不说一下它的创始人Guido van Rossu ...
- Redis介绍以及安装(Linux)
Redis介绍以及安装(Linux) redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的 ...
- 自动化运维工具之 Ansible 介绍及安装使用
一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...
- 【兄弟连ThinkPHP】1、介绍和安装
琢磨了好几天的ThinkPHP了,兄弟连的视频真心不错,下面是记得一些要点,只做备忘,有兴趣的朋友请去百度兄弟连. ## ThinkPHP 3 介绍及安装#讲师:赵桐正微博:http://weibo. ...
随机推荐
- iTOP-4412开发板-can测试工具使用文档
本文档介绍如何使用 can 工具测试 can. 给用户提供了“can_libs.rar”以及“can_tools.zip”压缩包,分别是 can 工具需要的库 文件和 can 工具二进制文件. 注意开 ...
- 嵌入式开发为什么选择C语言作为开发语言?
了解嵌入式开发的朋友们都非常的清楚其核心的开发语言为C语言,C语言在嵌入式开发的过程中占有十分重要的地位,可以说两者之间“你中有我,我中有你”.但是有很多人会想,有那么多的开发语言为什么会单单的选择C ...
- 吴裕雄--天生自然 pythonTensorFlow自然语言处理:Attention模型--测试
import sys import codecs import tensorflow as tf # 1.参数设置. # 读取checkpoint的路径.9000表示是训练程序在第9000步保存的ch ...
- Springboot配置注入
springboot中如何将yml 配置文件中配置,在类中注入使用 ①第一种使用@value方式 ################## 配置文件 ######################### d ...
- 关于XML的一些总结
xml的知识结构图 eXtensible Markup Language,可扩展标记语言,简称XML,和HTML比较而言,语法相似,作用不同 XML被设计用来存储和传输数据,但存储数据方面,数据库是主 ...
- eclipse安装tfs插件
Eclipse安装TFS插件 1.打开Eclipse.点击菜单栏上的 “Help”——>选择“Install New Software”. 2.在弹出框中输入点击“Add”. 3.在弹出框中 ...
- centos 7 安装及配置vsftpd
一.防火墙开放21端口 二.创建FTP用户,创建完用户后在/etc/passwd里是这样呈现的:ftpuser:x:1008:1008::/var/www/html:/sbin/nologin 三.y ...
- poj-3661 Running(DP)
http://poj.org/problem?id=3661 Description The cows are trying to become better athletes, so Bessie ...
- Linux_列出文件和文件属性
ls +文件名:列出该文件 ls +目录名:列出该目录下的文件 ls 什么也不加:列出当前工作目录下的文件 ls -a 列出包括隐藏文件,即所有文件名 ls -l 列出文件名+详细信息 ls -al ...
- js正则表达式常用的大部分函数
1.)String方法a.)String.search()参数:可以是正则表达式也可以是普通的字符串.返回值:如果找到匹配则返回首字符的索引位置,找不到则返回-1var s = "Hello ...