概述
WRK—现代HTTP基准测试工具,在多核CPU上运行时,能够产生大量负载。它结合了多线程设计和可扩展的事件通知系统如epoll和kqueue; 支持大多数类Unix系统,不支持Windows。
基于wrk优化的wrk2可提供的额外参数 -R,用以指定每秒特定请求数的限制。
安装
git clone https://github.com/wg/wrk.git
cd wrk && make
cp wrk /usr/sbin/wrk && chmod +x /usr/sbin/wrk
命令选项
演示示例
1. 基本示例
wrk -t2 -c30 -d30s --latency http://192.168.31.92/
2. POST|GET 传参请求测试
wrk -t2 -c10 --latency --script=params.data http://192.168.31.91/api/test/
请求参数:params.data
wrk.method = "POST"
wrk.body = "username=chris&password=123456"
wrk.headers["Content-Type"] = "application/x-www-form-urlencoded"
3. 修改请求头信息User-Agent测试
wrk -t2 -c10 -d10s --latency -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" http://192.168.31.92/
4. 基于lua脚本定制测试报告
wrk -c10 -t2 -d10s -s setup.lua --latency http://192.168.31.92/
setup.lua脚本内容:
压测结果:
閱讀更多 高效Linux運維實踐 的文章