服務器為4核8G,5M帶寬,Mysql8.0,redis都在一臺服務器上。
用 webman 寫了一個接口,只有一個DB查詢列表,并且結果使用了redis緩存。
ab 測試 1000個請求,100個并發(fā),
結果RPS只有 140左右
請問這個結果正常嗎?
香港服務器?你的服務器網絡太慢了
Connect連接平均耗時539ms,處理耗時151ms,等待138ms。
另外走外網壓測都慢,因為有網絡延遲啊,瓶頸在網路,你看服務器cpu什么的應該都不高。
拿1個并發(fā)來舉例,壓測過程是發(fā)起1個請求,假設等待網絡傳輸800毫秒才收到響應,然后再發(fā)下一個請求。這樣算下來1個并發(fā)QPS就大概是1/0.8=1.25QPS,那么100個并發(fā)也就大概125QPS。
這種情況想提高壓測的QPS就要加大并發(fā),比如加到1000并發(fā),QPS應該能提高一些,1000并發(fā)差不多5M帶寬也打滿了。
如果想知道你服務器實際能承受的壓力,需要走內網壓測,或者127.0.0.1壓測,這樣才能把cpu打滿。