网友回复
一、wrk
wrk 是一款针对 Http 协议的基准测试工具,它能够在单机多核 CPU 的条件下,使用系统自带的高性能 I/O 机制,如 epoll,kqueue 等,通过多线程和事件模式,对目标机器产生大量的负载。
wrk 的优势:
轻量级性能测试工具;
安装简单(相对 Apache ab 来说);
学习曲线基本为零,几分钟就能学会咋用了;
基于系统自带的高性能 I/O 机制,如 epoll, kqueue, 利用异步的事件驱动框架,通过很少的线程就可以压出很大的并发量;
支持lua脚本
wrk 的劣势
wrk 目前仅支持单机压测,后续也不太可能支持多机器对目标机压测,因为它本身的定位,并不是用来取代 JMeter, LoadRunner 等专业的测试工具,wrk 提供的功能,对我们后端开发人员来说,应付日常接口性能验证还是比较友好的。
centos安装
依次执行如下命令:
yum install git -y git clone https://github.com/wg/wrk.git wrk yum install unzip -y yum install gcc -y make cp wrk /usr/local/bin/
使用方式:
$./wrk -c 100 -d 10 http://domain/path
其中,参数「c」表示的是并发,参数「d」表示的是整个测试持续的时间。此外,可以通过参数「t」来控制线程数(缺省值为 2),实际使用中可以视情况酌情增大。
示例,开2个线程,建立6个连接,持续请求百度5s
wrk -t 2 -c 6 -d 5s https://www.baidu.com Running 5s test @ https://www.baidu.com 2 threads and 6 connections Thread Stats Avg Stdev Max +/- Stdev Latency 15.97ms 3.58ms 36.06ms 86.53% Req/Sec 185.96 21.39 220.00 82.00% 1862 requests in 5.03s, 27.90MB read Socket errors: connect 0, read 3, write 0, timeout 0 Requests/sec: 369.85 Transfer/sec: 5.54MB使用脚本发送表单请求
# post.lua wrk.method = "POST" wrk.body = "login=sammy&password=test" wrk.headers["Content-Type"] = "appl...
点击查看剩余70%
腾讯混元模型广场里都是混元模型的垂直小模型,如何api调用?
为啥所有的照片分辨率提升工具都会修改照片上的图案细节?
js如何在浏览器中将webm视频的声音分离为单独音频?
微信小程序如何播放第三方域名url的mp4视频?
ai多模态大模型能实时识别视频中的手语为文字吗?
如何远程调试别人的chrome浏览器获取调试信息?
为啥js打开新网页window.open设置窗口宽高无效?
浏览器中js的navigator.mediaDevices.getDisplayMedia屏幕录像无法录制SpeechSynthesisUtterance产生的说话声音?
js中mediaRecorder如何录制window.speechSynthesis声音音频并下载?
python如何直接获取抖音短视频的音频文件url?