ab apache bench 增压测试方案,采用gnuplot数据汇总+excel生成折线图
脚本
pressurization-test-ab.sh
#!/bin/bash
set -xexport API_URL=http://192.168.0.7/
export INIT_CONNECTION=100
export SLEEP_TIME_SECOND=3
export FINAL_SLEEP_TIME_SECNOD=10
export LOOP_COUNT=100
export GNUPLOT_HEAD="starttime seconds ctime dtime ttime wait"
workdir=$(cd $(dirname $0); pwd)
cd ${workdir}
ulimit -n 65535export API_TARGET=0k
for ((i=1; i<=${LOOP_COUNT}; i++))
doecho ${i}# 保持连接ab -k -r -n 999999999 -g ab-${i}-${API_TARGET}.xls -c${INIT_CONNECTION} ${API_URL} > ab-${i}-${API_TARGET}.log 2>&1 &# 不保持连接# ab -r -n 999999999 -g ab-${i}-${API_TARGET}.xls -c${INIT_CONNECTION} ${API_URL} > ab-${i}-${API_TARGET}.log 2>&1 &sleep ${SLEEP_TIME_SECOND}
donesleep ${FINAL_SLEEP_TIME_SECNOD}
killall -SIGINT ab
echo "等待文件生成"
sleep 10bash pressurization-test-ab-result.sh
pressurization-test-ab-result.sh
#!/bin/bashecho "合并到一个大文件"
test -f ab-${API_TARGET}-all.xls && rm -f ab-${API_TARGET}-all.xls
touch ab-${API_TARGET}-all.xls
for ((i=1; i<=${LOOP_COUNT}; i++))
doecho "merge ab-${i}-${API_TARGET}.xls"sed -i '1d' ab-${i}-${API_TARGET}.xlscat ab-${i}-${API_TARGET}.xls >> ab-${API_TARGET}-all.xls
doneecho "文件基于时间排序"
# 按照第4个字段(时间),升序排序
sort -k4,1 ab-${API_TARGET}-all.xls > ab-${API_TARGET}-all-sorted.xlsecho "按照每秒钟,生成时间x、处理数量y1、平均响应时间y2"
test -f ab-${API_TARGET}-all-report.xls && rm -f ab-${API_TARGET}-all-report.xlsfor t in $(cat ab-${API_TARGET}-all-sorted.xls | awk '{print $4}' | uniq)
doecho ${t} # Requests per secondrps=$(grep ${t} ab-${API_TARGET}-all-sorted.xls -c)# Time per requesttpr=$(grep ${t} ab-${API_TARGET}-all-sorted.xls | awk '{sum+=$9}END{print sum}')tpr=$(echo "scale=2;${tpr}/${rps}" | bc)echo "${t} ${rps} ${tpr}" >> ab-${API_TARGET}-all-report.xls
doneecho "分析完成: ab-${API_TARGET}-all-report.xls"
启动测试,并生成report文件
bash pressurization-test-ab.sh
得到报告文件:ab-0k-all-report.xls
下载到本地,采用wps打开
全选->插入->二维折线图
选中系列2折现,右键,设置数据系列格式
选择次坐标
拖拽折线图,放大到合适尺寸
主坐标轴:Requests per second
次坐标轴:Time per request
ab apache bench 增压测试方案,采用gnuplot数据汇总+excel生成折线图相关推荐
- docker搭建并使用AB(apache bench)测试工具压力测试
构建镜像 构建镜像准备: 了解alpine: Alpine Linux 是一个社区开发的面向安全应用的轻量级Linux发行版 构建的Alpine基础镜像的大小为6M 左右 -特点就是小 比咱们使用的l ...
- CentOS7单独安装Apache Bench压力测试工具
用于并发测试. 1.安装 # need to run ab,apache portable runtime yum install apr-util# yum install yum-utils# 创 ...
- html5 并发测试工具,AB(Apache benchmark)并发测试工具使用教程
ab详细结果说明 测试网站:[ab -n 1000 -c 10 http://192.168.8.35:9000/noCardNoPasswordSign] -n表示总共发送的请求数 -c表示每次并发 ...
- ab(Apache Bench)命令详解以及压力测试模拟
2019独角兽企业重金招聘Python工程师标准>>> 简介 ApacheBench 是 Apache服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载 ...
- Apache POI 生成折线图+柱状图设置双Y轴并导出word文档
实际项目中遇到的问题,相关信息实在较少,怕自己忘记,菜鸟记录一下 我设置的是双Y轴的组和图表.左侧为折线图Y轴,右侧为柱状图Y轴. 直接上代码. // An highlighted block pub ...
- 智能座舱测试——数据驱动开发的语音测试方案
数据驱动开发的语音测试方案 背景 面向对象 数据准备 技术需求 测试任务 测试基础设施 附录 背景 本文章只涉及思路,不涉及具体技术实现 不知不觉已经做语音云端测试已经有段日子了,从刚开始关注语音识别 ...
- Apache Bench的安装与使用(前端使用apache-bench进行并发测试)
Apache Bench安装与使用 一.Apache Bench简介 ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载的本机要 ...
- 后端开发都应该了解点接口的压力测试(Apache Bench版)
背景 小A:小B,最近调你的接口老是超时呀,8秒都还没返回结果,是不是有性能问题呀! 小B :我看看~~ 类似这样的对话,在现实中是时有发生的,不是特别严重的话,往往大家也不会去重视这个事. 尤其是在 ...
- Centos7安装ab(Apache Benchmark)测试工具及使用
Centos7安装ab(Apache Benchmark)测试工具及使用 Apache Benchmark简称AB 一.安装 yum install -y httpd-tools 二.创建Post请求 ...
最新文章
- 如何锁门_保安巡查时发现住户未锁门,应该怎么办?记住这九点!
- ios开发值json数据文件的存取
- 循环队列真的没那么难,就那么几个注意点,附Java代码及运行效果
- boost::log相关用法的测试程序
- DIV的边距属性在Chrome和IE中的区别
- 为什么PostgreSQL比MongoDB还快之完结篇(深挖单点索引查询)
- Memento(备忘录)--对象行为型模式
- 无需 Dockerfile 的镜像构建:BuildPack vs Dockerfile
- java的动态绑定是什么意思_Java的动态绑定机制
- java许愿墙_18.JavaScript实现许愿墙效果
- EPERM: operation not permitted, Please run SwitchHosts
- string的一些基本操作和骚操作
- 在自定义类中使用HttpContext和Page等对象的方法
- SQL Server字符串处理函数大全
- 微信授权+JS-SDK
- Aras innovator: TOC目录简单汉化方法
- 我的冷笑话20100125
- UE4 VR 重置摄像机朝向
- Spring Boot入门(24):Spring Boot事务 | 超级详细,建议收藏
- jq多选按钮值_jQuery实现获取选中复选框的值实例详解