下圖為 ab 壓測(cè)結(jié)果
下圖為 status 截圖
服務(wù)器為2H2G 不知道什么原因 失敗率較高 有些進(jìn)程沒有請(qǐng)求數(shù)
'count' => cpu_count() * 4,
'reusePort' => true,
ab的問題,如果你每個(gè)請(qǐng)求返回的數(shù)據(jù)長(zhǎng)度不同,就認(rèn)為是失敗請(qǐng)求。
比如用了rand函數(shù)隨機(jī)返回一個(gè)長(zhǎng)度不同的數(shù)字就認(rèn)為是失敗請(qǐng)求,任何語言任何框架都一樣。
所以ab的Failed requests沒什么意義
壓測(cè)時(shí)如何開啟HTTP keep-alive?
如果是用的ab程序壓測(cè)需要加-k參數(shù),例如 ab -n100000 -c200 -k http://127.0.0.1:8787/。
apipost需要在返回頭中返回gzip頭才能開啟keep-alive(apipost的bug,參考下面)。
其它壓測(cè)程序一般會(huì)默認(rèn)開啟。
這樣再試試。