• nGrinder 介绍与安装


    nGrinder是基于Grinder开源项目,但由NHN公司的nGrinder开发团队进行了重新设计和完善(所以叫做nGrinder)。

    它是由一个controller和连接它的多个agent组成,用户可以通过web界面管理和控制测试,以及查看测试报告,controller会把测试分发到一个或多个agent去执行。用户可以设置使用多个进程和线程来并发的执行该脚本,而且在同一线程中,来重复不断的执行测试脚本,来模拟很多并发用户。

    nGrinder的测试是基于一个python的测试脚本,用户按照一定规则编写测试脚本以后,controller会将脚本以及需要的其他文件分发到agent,用Jython执行。并在执行过程中收集运行情况、响应时间、测试目标服务器的运行情况等。并保存这些数据生成运行报告,以供以后查看。


    为什么选择nGrinder

    JMeter

    Tsung

    Locust

    Loadrunner

    nGrinder

    综上可以看出nGrindr还是有很多优势的。


    总体架构

    640?wx_fmt=png

    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

    640?wx_fmt=png

    安装agent

    640?wx_fmt=png

    agent在controller页面中直接下载

    因为使用的是admin帐号登录,下载的agents包中的配置可以分享给所有的用户使用。

    下载后,把agent放在服务器上,解压

    640?wx_fmt=png

    启动前检查 ulimt -a ,调整配置让其运行更多的线程,执行bash run_agent.sh 启动agent。

    640?wx_fmt=png

    安装monitor

    nGrinder的Monitor是agent的一个子集,用于收集系统相关数据(比如CPU, MEM and Network) 

    agent在controller页面中直接下载

    640?wx_fmt=png

    下载后,把monitor放在服务器上,解压

    640?wx_fmt=png

    执行bash run_monitor.sh启动monitor

    640?wx_fmt=png

    安装完测试

    nGrinder运行一个压力测试只需3步:

    1. 编写测试脚本

    2. 场景设计:配置并发用户数,执行时间,资源监控

    3. 场景执行,结束后自动生成报告

    这里测试一个简单的get请求:http://192.168.42.32:82/sourcing/tradeservice/quotation-request.html

    第一步,编写测试脚本

    登录ngrinder,输入url,点击开始测试

    640?wx_fmt=png

    第二步,场景设计

    填写相应场景信息,如并发用户数,场景执行时间等

    640?wx_fmt=png

    640?wx_fmt=png

    第三步,场景执行

    点击保存并运行按钮,开始场景执行

    640?wx_fmt=png

    原文链接:http://tonylit.me/2017/03/23/ngrinder介绍与安装/

  • 相关阅读:
    OpenResty 作者章亦春访谈实录
    linux 下C语言学习路线
    swift 集合类型
    不懂技术的人不要对懂技术的人说这很容易实现
    java学习笔记7--抽象类与抽象方法
    java学习笔记6--类的继承、Object类
    python练习题
    python的里字典和列表
    python里list列表,tuple元组内部功能介绍
    python里float和long内部功能及字符串str介绍
  • 原文地址:https://www.cnblogs.com/finer/p/11895099.html
Copyright © 2020-2023  润新知