在centos7部署了個webman的項目,在windwos環(huán)境使用apiPost進行壓力測試時會出現(xiàn)部分dial tcp 127.0.0.1: connectex: Only one usage of each socket address (protocol/network address/port) is normally permitted.
的報錯,大概占總請求的不到1%。
cs_id 是1到10W,并發(fā)數(shù)100個,時長180S。
$params = $request->all();
if (empty($params['cs_id'])) {
return json(['code' => 20000, 'msg' => 'id不能為空']);
}
$key = 'CS_ID_' . $params['cs_id'];
$cached_data = Redis::hGetAll($key);
if (!empty($cached_data)) {
return json_encode(['code' => 200, 'msg' => 'success', 'data' => $cached_data]);
}
$data = DB::table('conference')
->select('*')
->where('CS_ID', $params['cs_id'])
->first();
if ($data) {
Redis::hMSet($key, (array)$data);
Redis::expire($key, 600);
return json_encode(['code' => 200, 'msg' => 'success', 'data' => (array)$data]);
} else {
return json_encode(['code' => 200, 'msg' => 'success', 'data' => null]);
}
dial tcp 127.0.0.1: connectex: Only one usage of each socket address (protocol/network address/port) is normally permitted.
"workerman/webman-framework": "^1.6.8"
使用keepalive壓測,不然windows壓力機的操作系統(tǒng)端口不夠用。
壓力測試相關(guān)參考手冊 http://www.wtbis.cn/doc/webman/others/benchmarks.html
另外 apipost有bug,不建議用它壓測,手冊里有說