jmeter静默压测+可视化
静默压测自动化脚本auto_stress_test.sh
#!/usr/bin/env bash
export jmx_template="test2"
export suffix=".jmx"
export jmx_template_filename="${jmx_template}${suffix}"
export os_type=`uname`
# 需要在系统变量中定义jmeter根目录的位置,如下
#export jmeter_path=/usr/local/jmeter/apache-jmeter-5.2
# 清空nohup.out
cat /dev/null > nohup.out
# 强制杀掉JMeter进程
killJMeter()
{
pid=`ps -ef|grep jmeter|grep java|grep ${jmx_filename}|awk '{print $2}'`
echo "jmeter Id list :$pid"
if [[ "$pid" = "" ]]
then
echo "no jmeter pid alive"
else
kill -9 $pid
fi
}
thread_number_array=(100 200 300)
for num in "${thread_number_array[@]}"
do
# 生成对应压测线程的jmx文件
export jmx_filename="${jmx_template}_${num}${suffix}"
export jtl_filename="test_${num}.jtl"
rm -f ${jmx_filename} ${jtl_filename}
cp ${jmx_template_filename} ${jmx_filename}
echo "生成jmx压测脚本 ${jmx_filename}"
if [[ "${os_type}" == "Darwin" ]]; then
sed -i "" "s/thread_num/${num}/g" ${jmx_filename}
else
sed -i "s/thread_num/${num}/g" ${jmx_filename}
fi
# JMeter 静默压测
nohup ${jmeter_path}/bin/jmeter -n -t ${jmx_filename} -l ${jtl_filename} &
sleep 30
killJMeter
rm -f ${jmx_filename}
done
echo "自动化压测全部结束"
jmeter脚本test2.jmx必须和auto_stress_test.sh脚本在同一个文件夹下
docker 安装influxdb
启动influxdb
docker run -d -p 8086:8086 -p 8083:8083 --name=jmeterdb influxdb
进入influxdb容器
docker exec -it jmeterdb bash
进入influxdb输入
influx
创建数据库,名称为:jmeter
create database jmeter;
进入创建的数据库
use jmeter
添加Backend LIstener
Backend LIstener配置连接influxdb
influxdbUrl:http://119.3.89.184:8086/write?db=jmeter
119.3.89.184为你的ip
db:上面创建的influxdb的数据库名称
application:可以自己起名
搭建grafana
docker run -d -p 3000:3000 --name=jmeterGraf grafana/grafana
初始用户名:admin
密码:admin
压测后
导入模板的json文件
链接:https://pan.baidu.com/s/1lUGR-kMbk4hhNNKU7udzdQ 密码:hdz9
jmeter静默压测+可视化的更多相关文章
- 性能工具之JMeter+InfluxDB+Grafana打造压测可视化实时监控【转】
概述 本文我们将介绍如何使用JMeter+InfluxDB+Grafana打造压测可视化实时监控. 引言 我们很多时候在使用JMeter做性能测试,我们很难及时察看压测过程中应用的性能状况,总是需要等 ...
- JMeter分布式压测实战(2020年清明假期学习笔记)
一.常用压力测试工具对比 简介:目前用的常用测试工具对比 1.loadrunner 性能稳定,压测结果及颗粒度大,可以自定义脚本进行压测,但是太过于重大,功能比较繁多. 2.Apache ab(单接口 ...
- lesson5:利用jmeter来压测消息队列(activemq)
本文讲述了利用jmeter来压测消息队列,其中消息队列采用apache的activemq,jmeter本身是支持符合jms标准消息队列的压测,由于jmeter的官方sampler配置比较复杂,本文直接 ...
- lesson4:利用jmeter来压测数据库
本文讲述了如何利用jmeter来压测数据库,事例中选取了mysql作为测试数据库,其它的数据库也是一样,只需要更换驱动程序即可. 准备工作:a.mysql数据库安装,请自行百度:b.jdbc驱动包,请 ...
- jmeter 分布式压测(windows)
单台压测机通常会遇到客户端瓶颈,受制于客户机的性能.可能由于网络带宽,CPU,内存的限制不能给到服务器足够的压力,这个时候你就需要用到分布式方案来解决客户机的瓶颈,压测的结果也会更加接近于真实情况. ...
- jmeter简单压测设置
参数化 随机参数 时间参数 顺序自增函数 文件读取 直接引用 响应断言 用来查看sessionid 关联 关联引用 jmeter操作数据库 安装连接程序包 ip 端口号 哪个数据库 可以执行多条s ...
- Jmeter阶梯式压测
https://www.cnblogs.com/Zfc-Cjk/p/11639219.html 什么是阶梯式压测? 阶梯式压测,就是对系统的压力呈现阶梯性增加的过程,每个阶段压力值都要增加一个数量值, ...
- jmeter接口压测的反思
jmeter接口压测的反思 1.keepalive的坑:连接数满了,导致发起的请求失败. 2.token关联?是数据库取做参数化,还是随机数生成(需要改代码) 3.签名问题如何处理? 4.压测负载机端 ...
- 压力测试(八)-多节点JMeter分布式压测实战
1.Jmeter4.0分布式压测准备工作 简介:讲解Linux服务器上jmeter进行分布式压测的相关准备工作 1.压测注意事项 the firewalls on the systems are tu ...
随机推荐
- Azure Storage 系列(五)通过Azure.Cosmos.Table 类库在.Net 上使用 Table Storage
一,引言 上一篇文章我们在.NET 项目中添加了 “WindowsAzure.Storage” 的 NuGet 包进行操作Table 数据,但是使用的 “WindowsAzure.Storage” ...
- Linux实战(8):查看文件大小
du -sh *
- 云计算openstack核心组件——nova计算服务(7)
一.nova介绍: Nova 是 OpenStack 最核心的服务,负责维护和管理云环境的计算资源.OpenStack 作为 IaaS 的云操作系统,虚拟机生命周期管理也就是通过 Nova ...
- java虚拟机配置
-XXSurvivorRatio 设置两个survivor和eden的比,8表示两个survivor:eden:2:8.survivor的比例影响新生代向老年代移动的数度.survivor比例越小,新 ...
- Docker:常见命令
Docker常见命令(持续更新中): 说明 命令 截图 1 查看Docker版本 Docker -v 2 查看镜像 Docker image ls 3 查看容器 Docker conta ...
- dpwwn-02靶机渗透
dpwwn-02靶机渗透 将两台机器都配置为net模式. 进行一下内网扫描: 发现主机10.10.10.10,进行端口扫描. 发现有80,111,443,2049等端口开放,443值得注意. 访问网站 ...
- Python 3 入门,看这篇就够了(超全整理)
史上最全Python资料汇总(长期更新).隔壁小孩都馋哭了 --- 点击领取 今天和大家分享的内容是Python入门干货,文章很长. 简介 Python 是一种高层次的结合了解释性.编译性.互动性和面 ...
- uBuntu安装其他版本Python
问题描述:阿里云服务器uBuntu版本为16.04,默认Python版本为2.7.12和3.5.2,但是FastAPI,仅支持3.6+版本,因此需要更高版本的Python. 注意:系统自带的Pytho ...
- Beyond Compare 3, 简体中文版 安装
转载: 1.https://www.scootersoftware.com/download.php 2.http://www.scootersoftware.com/download.php 下载地 ...
- matlab中imfilter、conv2、imfilter2用法及区别
来源 :https://blog.csdn.net/u013066730/article/details/56665308(比较详细) https://blog.csdn.net/yuanhuilin ...