网站首页 > 技术教程 正文
Apache JMeter 是一款纯 java 的压力测试工具, 它最初设计用于测试 Web 应用程序,但已经扩展到其他测试功能。项目地址 https://jmeter.apache.org/。
本次使用此分布式压力测试工具测试 nginx 的并发性能。 分布式测试原理如下图:
各个节点角色分类
- Master 控制节点
- Slave 发起请求的节点
- Target 需要测试的目标节点
本次测试使用 11 台服务器,各个节点信息和角色分类如下:
一、软件部署和配置
1、master 和 slave 节点安装 java1.8 环境,步骤略。
2、master 和 slave 节点下载最新版 jmeter3.3 并配置。
- 下载地址: http://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/apache-jmeter-3.3.tgz
1)Master 配置
解压下载的软件包,修改配置文件「apache-jmeter-3.3\bin\jmeter.properties」中内容将 「remote_hosts=127.0.0.1 」更改为
remote_hosts=223.111.185.98,223.111.185.99,223.111.185.100,223.111.185.101,223.11 1.185.102,223.111.185.103,223.111.185.104,223.111.185.105,223.111.185.106
2)Master 启动
点击「apache-jmeter-3.3\bin\ ApacheJMeter.jar」 运行软件
3)Master 测试计划配置
添加线程组:
配置参数如下三个参数:
添加 http 的 sample
配置如下三个参数
然后点击保存测试计划
4)Slave 配置:
1、本次软件下载并解压在/usr/local/src/apache-jmeter-3.3/目录 2、更改 hosts: echo "`ifconfig p2p1 |grep 'inet addr' |cut -d: -f2 |cut -d" " -f1` `hostname`" >>/etc/hosts 3、更改 jvm 内存设置: sed -i "s/-Xms512m -Xmx512m/-Xms30720m -Xmx51200m/g" /usr/local/src/apachejmeter-3.3/bin/jmeter salve 4、启动: /usr/local/src/apache-jmeter-3.3/bin/jmeter-server &
3、Target 配置:
本次只是测试 nginx 的并发数,故断言在外部实现。在外部监测点执行「curl -I http://223.111.185.107/yundun_monitor_node」无返回则判断 ngixn 无法服务。由于压测可能导致 target 无法登陆,故提前设置脚本记录实时连接数到日志 文件。当外部无法访问节点时记录时间并和 Target 上的时间点的连接数对比。
Target 配置记录连接数: screen -R ss for ((a=1;a<=10000;a++)); do echo $a `date`; sleep 1; ss -s >>/root/ss.log; done ctrl+a +d 退出 screen 后台执行。
4、外部测试 Target 可用性配置
外部一台服务器执行 for ((a=1;a<=1000;a++)); do echo $a `date`; sleep 1; curl -I http://223.111.185.107/yundun_monitor_node; done
二、Master 发起压测
三、分析测试结果
一般几分钟内 Target 节点将无法访问。此时查看外部检测节点访问情况。出现无法访问的时候记录时间。
由于并发很大可能无法在 slave 上停掉测试。需要杀掉 slave 节点上的 jmeter-server 进程来停掉压测。
执行:killall -9 jmeter-server killall -9 java
等待 target 节点恢复登录 target 查看并发记录日志文件在对应时间点的连接
测试结果:本次测试 estab 连接为 108155 的时候,在外部无法访问 nginx 页面。
一提到 IT 运维,脑海中浮现的都是:背锅、填坑、救火、7*24小时待命…
如果可以:我们也想每天不加班、一觉到天亮、追网游、陪女友…
这个真的可以有!
推荐一个运维监控神器——王教授。多来源各式监控汇聚一图展示,资源使用异常、可见风险告警通知到个人。帮助提前发现系统各类问题,减小了运维事故的发生。
用王教授!晚上不“肝”白天干!
绑定云账号AcessKey随时查看到账户下所有资产状况,获取及时的云资源变化情况、问题提醒。
神仙运维生活,一招即获~有需要的运维同学欢迎点击文末王教授二维码查看详情!
网站崩溃找不到原因?平台搭建无从下手?热门技术不想落伍?想要变强找不到资料?
加入[IT拯救联盟],让大牛和同伴拯救你,带你装x带你飞。定期干货分享、大牛专业解答、实用IT工具优选.....
私信小编“联盟”,即可加入我们~
- 上一篇: 推荐收藏-Nginx基本属性配置详解大全
- 下一篇: nginx-端口转发(nginx端口转发多个)
猜你喜欢
- 2024-10-10 「Nginx」配置一个高性能Nginx(nginx详细配置)
- 2024-09-16 推荐收藏-Nginx基本属性配置详解大全
- 2024-09-16 一文理清 nginx 中的 location 配置(系列一)
- 2024-09-16 Nginx 转发时的一个坑,运维居然让我背锅
- 2024-09-16 一次说清-Nginx反向代理及参数配置
- 2024-09-16 图解丨Nginx 中的四级指针(nginx支持4层转发吗)
- 2024-09-16 「每天一道面试题」Nginx gzip配置
- 2024-09-16 Linux TCP队列相关参数的总结(linux tcpdump)
- 2024-09-16 nginx作用及其配置(nginx 用处)
- 2024-09-16 Linux 下Nginx默认参数编译安装与启动配置
你 发表评论:
欢迎- 08-06linux 和 windows文件格式互相转换
- 08-06谷歌 ChromeOS 已支持 7z、iso、tar 文件格式
- 08-06Linux下比较文件内容的6种方法
- 08-06文件格式及功能汇总
- 08-0610个Linux文件内容查看命令的实用示例
- 08-06Linux-如何区分不同文件类型
- 08-06Zabbix技术分享——监控windows进程资源使用情况
- 08-06Linux系统卡顿?学会ps命令这三招,轻松定位问题进程
- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)