http压测工具wrk使用
安装
wrk支持大多数类UNIX系统,不支持windows。需要操作系统支持LuaJIT和OpenSSL,不过不用担心,大多数类Unix系统都支持。安装wrk非常简单,只要从github上下载wrk源码,在项目路径下执行make命令即可。
git clone https://github.com/wg/wrk
cd 安装目录
make make之后,会在项目路径下生成可执行文件wrk,随后就可以用其进行HTTP压测了。可以把这个可执行文件拷贝到某个已在path中的路径,比如/usr/local/bin,这样就可以在任何路径直接使用wrk了。
基本使用
1.命令行敲下wrk,可以看到使用帮助
Usage: wrk <options> <url>
Options:
-c, --connections <N> Connections to keep open
-d, --duration <T> Duration of test
-t, --threads <N> Number of threads to use
-s, --script <S> Load Lua script file
-H, --header <H> Add header to request
--latency Print latency statistics
--timeout <T> Socket/request timeout
-v, --version Print version details
Numeric arguments may include a SI unit (1k, 1M, 1G)
Time arguments may include a time unit (2s, 2m, 2h)
翻成中文:
使用方法: wrk <选项> <被测试的 http url>
Options:
-c, --connections <N>跟服务器建立并保持TCP连接数据
-d, --duration <T>压测时间
-t, --threads <N>使用多多少个线程进行压测
-s, --script <S>指定Lua脚本路径
-H, --header <H>为每一个HTTP请求添加HTTP头
--latency 在压测结束后,打印延迟统计信息
--timeout <T>超时时间
-v, --version 打印正在使用的wrk的详细版本信息
<N>代表数字参数,支持国际单位(1k, 1M, 1G)
<T>代表时间参数,支持时间单位(2s, 2m, 2h)
2.查看版本
wrk -v
输出:
wrk 4.1.0 [epoll] Copyright (C) 2012 Will Glozer
3.简单实例
wrk -t8 -c200 -d30s --lattency "http://www.baidu.com"
输出:
Running 30s test @ http://www.baidu.com
8 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 42.80ms 51.12ms 1.12s 75.42%
Req/Sec 596.69 132.39 0.99k 77.04%
Latency Distribution
50% 5.14ms
75% 93.38ms
90% 117.97ms
99% 136.72ms
98400 requests in 30.04s, 1.41GB read
Socket errors: connect 0, read 154331, write 0, timeout 0
Requests/sec: 3275.15
Transfer/sec: 48.06MB
以上使用8个线程200个连接,对bing首页进行了30秒的压测,并要求在压测结果中输出响应延迟信息。以下对压测结果进行简单注释:
Running 30s test @ http://www.baidu.com(辱没时间30s)
8 threads and 200 connections(共8个测试线程,200个连接)
Thread Stats Avg Stdev Max +/- Stdev
(平均值) (标准差) (最大值) (正负一个标准差所占比例)
Latency 42.80ms 51.12ms 1.12s 75.42%
(延迟)
Req/Sec 596.69 132.39 0.99k 77.04%
(处理的请求数)
Latency Distribution(延迟分布)
50% 5.14ms
75% 93.38ms
90% 117.97ms
99% 136.72ms(99分位的延迟)
98400 requests in 30.04s, 1.41GB read(30.04秒内处理完成了98499个请求,读取了1.41GB的数据)
Socket errors: connect 0, read 154331, write 0, timeout 0
Requests/sec: 3275.15(平均每秒处理完成了3275.15个请求)
Transfer/sec: 48.06MB(平均每秒读取数据48.06MB)
http压测工具wrk使用的更多相关文章
- Http压测工具wrk使用指南【转】
用过了很多压测工具,却一直没找到中意的那款.最近试了wrk感觉不错,写下这份使用指南给自己备忘用,如果能帮到你,那也很好. 安装 wrk支持大多数类UNIX系统,不支持windows.需要操作系统支持 ...
- Http 压测工具 wrk 基本使用
Http 压测工具 wrk 基本使用 Intro wrk 是一款现代HTTP基准测试工具,能够在单个多核CPU上运行时产生显着负载.它将多线程设计与可扩展事件通知系统(如epoll和kqueue)结合 ...
- Http压测工具wrk使用指南
用过了很多压测工具,却一直没找到中意的那款.最近试了wrk感觉不错,写下这份使用指南给自己备忘用,如果能帮到你,那也很好. 安装 wrk支持大多数类UNIX系统,不支持windows.需要操作系统支持 ...
- nginx压测工具--wrk
基本使用 命令行敲下wrk,可以看到使用帮助 Usage: wrk <options> <url> Options: -c, --connections <N> C ...
- http压测工具wrk
安装 wrk支持大多数类UNIX系统,不支持windows.需要操作系统支持LuaJIT和OpenSSL,不过不用担心,大多数类Unix系统都支持.安装wrk非常简单,只要从github上下载wrk源 ...
- HTTP 压测工具wrk简介
前段时间项目压测,看到开发命令行下使用这个命令进行压测非常简洁.方便,萌发了学习的兴趣,这里仅做简单介绍. 安装 wrk支持大多数UNIX系统,不支持Windows.需要操作系统支持LuaJIT和Op ...
- 压测工具wrk的编译安装与基础使用
Linux上编译安装: [root@centos ~]# cd /usr/local/src [root@centos ~]# yum install git -y [root@centos ~]# ...
- 接口压测工具WRK的学习与使用
之前一直在使用jmeter,第一次接触wrk,记录下使用过程以便自己再次使用. 首先,WRK是linux系统上才可以使用的工具,我也不想剑走偏锋的去研究如何让wrk可以在windows系统上使用. 临 ...
- wrk压测工具使用
介绍分为四部分 1.wrk简述 2.wrk安装 3.wrk运行参数 4.wrk高级用法 1.wrk简述 当使用ab做压测的时候发现,ab的客户端消耗很大,而且测试时性能较差,测试redis,sprin ...
随机推荐
- 2017(5)软件架构设计,web系统的架构设计,数据库系统,分布式数据库
试题五(共 25 分) 阅读以下关于 Web 系统架构设计的叙述,在答题纸上回答问题1 至问题 3. [说明] 某公司开发的 B2C 商务平台因业务扩展,导致系统访问量不断增大,现有系统访问速度缓慢, ...
- SQL Server 主库DML操作慢故障处理过程
从某个时间开始,Cat监控到的数据发现,正式环境的Insert 表很慢,数据库用了AlwasON高可用(1个备库做了实时同步),特别是每天早上9:00--11:00,做活动的时候,下单的insert需 ...
- java框架之SpringBoot(17)-监控管理
介绍 SpringBoot 提供了监控管理功能的场景启动器,它可以为我们提供准生产环境下的应用监控和管理功能.我们可以通过HTTP.JMX.SSH协议来进行操作,自动得到审计.健康及指标信息等. 使用 ...
- dataTable使用方法
using System; using System.Data; using System.Data.SqlClient; namespace App{ class MyClass{ public s ...
- excel表格获取汉字大写首拼函数(自定义宏)
打开excel,按Alt+F11,插入-模块,复制粘贴下边的函数 Function pinyin(p As String) As String i = Asc(p) Select Case i Cas ...
- Extjs6 grid 导出excel功能类,支持renderer
/* grid 导出excel扩展(纯客户端,提交到后台再导的可以自己改改代码也在) 参考自 https://blog.csdn.net/tianxiaode/article/details/4596 ...
- 极客时间 深入拆解java虚拟机 一至三讲学习总结
为什么要学习java虚拟机 1.学习java虚拟机的本质,是了解java程序是如何被执行且优化的.这样一来,才可以从内部入手,达到高效编程的目的.与此同时,你也可以为学习更深层级.更为核心的java技 ...
- 透析SOA、RPC、SOAP、REST、ICE、ESB模型发展史
最初的程序全是单机程序,没有网络,没有RPC,更没有RESTful.程序猿写的东西孤独运行在单机上. 那时的程序猿们语言相通,参与开发同一套系统的团队可以面对面沟通. 网络出现了.网络,也带来变乱.网 ...
- IP地址数据库 | 手机号段归属地数据库 | 行政区划省市区数据库
2019年4月最新版 IP地址数据库 (全球版·国内版·国外版·掩码版·英文版) 全球旗舰版 454267行 国内精华版 244379行 演示 https://www.qqzeng.com/ip ...
- Docker学习资源
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口. ...