在安装好wrk工具后,进入到wrk目录,执行压测命令,向地址为http://127.0.0.1:18880/testapi发送post请求,每次的请求内容由test.lua脚本的request方法生成
压测命令:./wrk -t1 -c1 -d1s --latency -s test.lua http://127.0.0.1:18880/testapi
参数释义:
-t:需要模拟的线程数
-c:需要模拟的连接数
-d:测试的持续时间
----timeout 或 -T:超时的时间
--latency:显示延迟统计
-s 或 --script: lua脚本
-H, --header: 添加http header, 比如. "User-Agent: wrk"
test.lua压测脚本内容:这里模拟一个post请求,data为消息体,每次请求生成一个uuid,保证数据的不重复
request= function()
local uuid = io.open("/proc/sys/kernel/random/uuid", "r"):read()
local data = [[{
"table_data":[
{
"create_time":"2021-02-03 21:34:44",
"description":"%s"}
],
"table_name":"tab_record"
}]]
wrk.method = "POST"
wrk.body =string.format(data,tostring(uuid))
wrk.headers["Content-Type"] = "application/json"
return wrk.format()
end