wrk 壓測中請求無法響應問題解決過程

2022-03-01 04:21:45 字數 2383 閱讀 8356

***************== 遇到問題 ***************==

$ 直連壓測

wrk -c10000 -t100 -d100m http://localhost:9981/order/list
$ nginx**壓測

wrk -c10000 -t100 -d100m http://localhost:8864/order/list
壓測外的請求無法響應***************== 搜素方案 ***************==$ 修改linux引數配置(最大開啟檔案數與程序最多開啟檔案數)以支援大量連線

$ nginx壓測時會產生大量time_wait,與後端通訊時開啟keep alive以緩解time_wait情況

***************== 用到的工具 ***************==

// 檢視linux tcp連線情況

netstat -n | awk '/^tcp/  end ';
// 更快檢視linux tcp連線情況的方式

ss -ant | awk 'nr>1  end ';
// 每秒輸出一次當前系統連線狀態

ss.sh

#!/bin/bash

while :

do ss -ant | awk 'nr>1 end '

sleep 1s;

done

***************== 最終解決 ***************==$ 修改linux引數配置

modprobe ip_conntrack

vi /etc/sysctl.conf

fs.file-max = 1024000

net.netfilter.nf_conntrack_max = 1024000

net.nf_conntrack_max = 1024000

/sbin/sysctl -p

vi /etc/security/limits.conf

* hard nofile 1024000

* soft nofile 1024000

try net.netfilter.nf_conntrack_max = 1024000

net.nf_conntrack_max = 1024000

instead

net.ipv4.ip_conntrack_max = 1024000

net.ipv4.netfilter.ip_conntrack_max = 1024000

$ 修改nginx配置

$ 再次壓測,直連和nginx**都能正常響應(雖然很慢...應該與硬體條件有關)

wrk 壓測post請求遍歷迴圈動態引數

一 post 請求,動態傳引數,只有body引數不同 startpost.lua 指令碼 loginmap counter 0 初始化方法 function init args 迴圈取檔案裡的每一行資料 for line in io.lines data cmp wrk scripts upload...

Jmeter壓測過程中的問題

問題一 不同使用者登入,提取token,後續的請求無法請求成功 解決方法 錄製登入請求,在登入請求後加正則提取器,把token提取出來 錄製後續的請求,eg 提交表單。a.在url中加入提取的token b.在請求下加cookie管理器,在管理器中加入提取的token 如果後續有很多請求,每個請求都...

SpringMVC 請求 響應亂碼問題解決方案

get請求引數是通過請求行中的url傳送給web伺服器 tomcat 的。tomcat伺服器會對url進行編碼操作 此時使用的是tomcat設定的字符集,預設是iso8859 1 到了我們的應用程式中的請求引數,已經是被tomcat使用iso8859 1字符集進行編碼之後的了。修改tomcat配置檔...