性能工具之nGrinder分布式简单环境搭建介绍_JAVA

背景

          nGrinder是一款分布式高并发开源压测软件,它是基于Grinder开源框架基础上由NHN公司所做的二次开发。nGrinder工具主要分由controller、agent、monitor三部分组成,其中controller(包含web管理后台)负责管理和控制测试流程、下发测试任务以及查看测试报告,agent负责启动压测进程&线程,压测目标服务器,monitor来监控目标服务器&被压测站点各项性能指标。

         nGrinder的主体部分由controller和连接它的多个agent组成,用户可以通过web管理界面来创建压测脚本和测试任务,查看测试报告。controller会把压测脚本和压测数据分发到一个或多个agent去执行。用户通过在压测任务中配置多个进程和线程来并发的执行该脚本,依托线程内重复执行压测脚本下发请求到目标服务器,模拟多用户(vuser)并发压测站点的目的。

环境部署

Linux环境部署

配置jdk环境变量参考:

vi /etc/profile 


向文件里面追加以下内容:


JAVA_HOME=/usr/java/j1.8.0_211
JRE_HOME=/usr/java/1.8.0_211/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib


export JAVA_HOME JRE_HOME PATH CLASSPATH


ESC 退出编辑模式   
:wq 保存退出
source /etc/profile   立即生效

检查:java -version

java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

查看防火墙

参考命令:

1、查看firewall服务状态
systemctl status firewalld
出现Active: active (running)切高亮显示则表示是启动状态。
出现 Active: inactive (dead)灰色表示停止,看单词也行。
2、查看firewall的状态
firewall-cmd --state
3、开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
4、查看防火墙规则
firewall-cmd --list-all 
5、查询、开放、关闭端口
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload


# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;

检查显示为:

性能工具之nGrinder分布式简单环境搭建介绍_压测_02

部署tomcat

上传ngrinder.war并且进行验证

性能工具之nGrinder分布式简单环境搭建介绍_java_03

验证是否启动成功

性能工具之nGrinder分布式简单环境搭建介绍_压测_04

使用admin/admin登录:

性能工具之nGrinder分布式简单环境搭建介绍_压测_05

下载Agent

性能工具之nGrinder分布式简单环境搭建介绍_压测_06

选择

性能工具之nGrinder分布式简单环境搭建介绍_JAVA_07

      下载agnet到本机

上传agent包

安装上传文件命令:

yum install -y lrzsz

性能工具之nGrinder分布式简单环境搭建介绍_JAVA_08

怎么上传你懂的,不用教了

修改配置win的agent配置为

性能工具之nGrinder分布式简单环境搭建介绍_压测_09

修改linux环境中agent配置

性能工具之nGrinder分布式简单环境搭建介绍_压测_10

启动linu/win中的agent

性能工具之nGrinder分布式简单环境搭建介绍_JAVA_11

登录控制台验证

性能工具之nGrinder分布式简单环境搭建介绍_压测_12

点击代理管理

性能工具之nGrinder分布式简单环境搭建介绍_JAVA_13

验证

性能工具之nGrinder分布式简单环境搭建介绍_java_14

以上是简单分布式环境部署

应该还有很多细节需要自己去调试与修改。

分享一个经典冒泡算法

>>> arr = [1,21,3,232,12,8]
>>> for i in range(len(arr)-1):
...         for j in range(len(arr) - i-1):
...             if arr[j] > arr[j +1 ]:
...                 arr[j],arr[j+1]=arr[j+1],arr[j]
...
>>> print(arr)
[1, 3, 8, 12, 21, 232]
>>>
'''
算法分析:
第一次找到最大值放到最后面
第二次去掉最大值再找到最大值放到最后面
。。。。以此类推
'''

     如果你觉得学习的成本太高,试试回想一下那些无知的代价;如果觉得学习太寂寞孤单,试想父母年迈的时候,自己年老的时候,妻与子的时候。

     每天进步一点点,坚持带来大改变,持续的学习和改变,终将成就最好的自己。



性能工具之nGrinder分布式简单环境搭建介绍_压测_15