WRK的HTTP服务压力测试
WRK的HTTP服务压力测试
前言
apache benchmark(ab)同属于性能测试工具,但是比 ab 功能更加强大
一、linux下安装WRK
1、安装环境和工具
# 安装 make 工具
sudo apt-get install make# 安装 gcc编译环境
sudo apt-get install build-essential
2、安装git
sudo apt-get install git
3、拷贝Wrk源码到本地
#下载命令
git clone https://github.com/wg/wrk.git #切换路径到wrk目录下
cd wrk make
#使用make命令编译环境
注意:如果编译过程中出现:
src/wrk.h:11:25: fatal error: openssl/ssl.h: No such file or directory #include <openssl/ssl.h>
下载openssl库
sudo apt-get install libssl-dev
或者
sudo yum install openssl-devel
make之后,会在项目路径下生成可执行文件wrk,随后就可以用其进行HTTP压测了。可以把这个可执行文件拷贝到某个已在path中的路径,比如/usr/local/bin,这样就可以在任何路径直接使用wrk了。
二、进行测试
1、常用命令参数
-c --conections:保持的连接数
-d --duration:压测持续时间(s)
-t --threads:使用的线程总数
-s --script:加载lua脚本
-H --header:在请求头部添加一些参数
--latency 打印详细的延迟统计信息
--timeout 请求的最大超时时间(s)
示例
wrk -t8 -c100 -d30s --latency http://127.0.0.1:8080/api/v1/posts?size=10
三、go-wrk
1、下载
go get github.com/adeven/go-wrk
2、使用方法
go-wrk [flags] url
3、常用参数
-H="User-Agent: go-wrk 0.1 bechmark\nContent-Type: text/html;": 由'\n'分隔的请求头
-c=100: 使用的最大连接数
-k=true: 是否禁用keep-alives
-i=false: if TLS security checks are disabled
-m="GET": HTTP请求方法
-n=1000: 请求总数
-t=1: 使用的线程数
-b="" HTTP请求体
-s="" 如果指定,它将计算响应中包含搜索到的字符串s的频率
4、示例
go-wrk -t=8 -c=100 -n=10000 "http://127.0.0.1:8080/api/v1/posts?size=10"
四、压测结果分析
Running 30s test @ http://www.bing.com (压测时间30s)8 threads and 200 connections (共8个测试线程,200个连接)Thread Stats Avg Stdev Max +/- Stdev(平均值) (标准差)(最大值)(正负一个标准差所占比例)Latency 46.67ms 215.38ms 1.67s 95.59%(延迟)Req/Sec 7.91k 1.15k 10.26k 70.77%(处理中的请求数)Latency Distribution (延迟分布)50% 2.93ms75% 3.78ms90% 4.73ms99% 1.35s (99分位的延迟)1790465 requests in 30.01s, 684.08MB read (30.01秒内共处理完成了1790465个请求,读取了684.08MB数据)
Requests/sec: 59658.29 (平均每秒处理完成59658.29个请求)
Transfer/sec: 22.79MB (平均每秒读取数据22.79MB)
相关借鉴:https://www.cnblogs.com/jiftle/p/7158291.html
如果看完对自己有所帮助,请点赞支持,谢谢大家
WRK的HTTP服务压力测试相关推荐
- web服务压力测试)有效的压力测试系统将应用以下这些关键条件
1)重复(Repetition):最明显的且最容易理解的压力条件就是测试的重复.换句话说,测试的重复就是一遍又一遍地执行某个操作或功能,比如重复调用一个Web 服务.功能验证测试可以用来被弄清楚一个操 ...
- 不区分语言开发工具1(服务压力测试,跨域问题解决,Redis进行密码的设置,设计模式,搭建FTP局域网服务,redis热key,redis哨兵,VueRouter模式)
1. Apache的ab工具:(压测的具体使用,可以实现添加参数进行相关的测试) 压测的概念: 吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s ...
- 【托管服务qin】WEB网站压力测试教程详解
Web 服务处于分布式计算的核心位置,它们之间的交互通常很难测试.分布式开发.大型的开发者团队以及对代码日益组件化的期望都有可能使 Web 服务的开发变得越来越容易隐藏错误.这些类型的错误极难检测出来 ...
- WEB网站压力测试教程详解
WEB 网站压力测试教程详解 Web 服务处于分布式计算的核心位置,它们之间的交互通常很难测试.分布式开发.大型的开发者团队以及对代码日益组件化的期望都有可能使 Web 服务的开发变得越来越容易隐藏错 ...
- web性能压力测试工具材料
很好的博客 http://www.nj-test.com/post/75-1.html :http://www.51testing.com/?uid-116228-action-spacelist-t ...
- WEB网站压力测试方案 压力测试如何换算并发用户数
http://wenku.baidu.com/view/bedf1a93daef5ef7ba0d3c29.html 压力测试通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大的服务级别 ...
- 几种网站压力测试工具调研与使用
在项目上线之前,都需要做压力测试,目的是看下我们的网站能抗住多少的压力,能承担多少并发,如果不做压力测试,一旦出现大访问量时,我们的网站会挂掉.因此,我们对现有较流行的几种网络压力测试工具进行了简单调 ...
- 模拟黑客思维对网站进行CC压力测试!(二)
玩计算机的老炮儿都知道买回来一台新机器,都需要烤机,也就对主机性能进行测试,一般三天,不死机,没有故障就是可以了.现在每天都上线N个网站,有几个对自己的网站进行过性能测试,压力测试,安全检测呢?网站线 ...
- 使用wrk工具对apisix插件file-logger进行压力测试
方案 apisix的路由开启插件file-logger前后,分别使用wrk工具进行压力测试. 准备工作 下载解压和安装 wget https://github.com/wg/wrk/archive/r ...
最新文章
- html 页面内锚点定位及跳转方法总结
- 1142 CREATE VIEW command denied to user 'blog'@'XXX.XXX.XXX.XXX' for table 'Articles'
- linux下的二进制文件的编辑和查看
- Ubuntu Terminal Shortcut
- ElasticSearch查询 第四篇:匹配查询(Match)
- DevOps时代,企业数字化转型需要强大的工具链
- python买东西_Python实战之ATM+购物车
- mydate97设置时间
- 【前端笔试算法题】之小偷分赃题
- tomcat服务器配置优化
- Oracle停止数据泵,如何停止重启数据泵任务
- 客流量统计分析系统应用解决方案
- Linux基础知识汇总、有这一篇就够了(2021最新整理)
- 通过cRIO 9047 USB端口自定义开发周立功CAN盒
- 项目实训(一)基于unity的2D多人乱斗闯关游戏设计与开发 unity的下载及了解
- 最最最详细的C语言教程笔记零起步(10)进阶必备 同笔者一起学习
- VS报错: fatal error LNK1120: 1 个无法解析的外部命令
- 新职业人才缺口近千万,90后最担心失业;字节跳动回应TikTok被收购传闻;Twitter公布账号劫持事故细节 | EA周报...
- offsetParent、offsetTop、offsetLeft、offsetHeight、offsetWidth
- 婚宴座位图html5,婚礼酒席座位该怎么安排好?婚宴座位安排图解
热门文章
- 使用OnBeforeUnload JavaScript事件
- java 计算三角形面积
- 万字长文,学会ElasticSearch,这一篇就够了!
- 童话里都是骗人的,扒一扒那些悲惨的原配,富家女扶贫是什么下场
- 【diannaoxitong】无线热点chinanet免费无线上网教程
- 物联网平台开发 污染物在线监控(监测)系统数据传输标准(HJ 212-2017代替HJ/T 212-2005)
- 菜鸟总结之——数据完整性
- java导出表格PDF
- matlab maximum,maximum size of a string in matlab
- C++---数字三角形模型---最低通行费(每日一道算法2023.1.14)