1. 程式人生 > >.net core 的效能以及大名鼎鼎的QPS

.net core 的效能以及大名鼎鼎的QPS

華麗的目錄

1、官方的測試結果

以下結果來自 .net core官方的benchmarks摘錄。

Linux

編號 對比方 系統環境 宿主環境 測試結果(QPS)
1 ASP.NET Core vs Python Django Linux Kestrel
vs uwsgi
26.7k vs 1.57k
2 ASP.NET Core vs Java Servlet Linux Kestrel vs Tomcat 26.7k vs 18.3k
3-1 ASP.NET Core vs NodeJS Express Linux Kestrel vs self host 26.7k vs 15.6k
4-2 ASP.NET Core vs NodeJS Koa Linux Kestrel vs self host 26.7k vs 17.5k
5 ASP.NET Core vs ASP.NET Core Linux vs Nano server Kestrel vs Kestrel 26.7k vs 27.7k

Windows

編號 對比方 系統環境 宿主環境 測試結果(QPS)
1 ASP.NET Core vs ASP.NET Core
Windows Kestrel vs IIS 45.6k vs 15.2k
2 ASP.NET Core vs ASP.NET Core Windows Kestrel vs WebListener 35.5k vs 27.9k
3 ASP.NET Core vs ASP.NET Windows IIS vs IIS 15.2k vs 18.2k
4 ASP.NET Core vs ASP.NET Windows Kestrel vs IIS 45.6k vs 18.2k

-----華麗的分割線-----


2、真正的生產環境

看到這些測試結果,是不是讓人開始懷疑人生了,人家都測到單臺 4W的QPS,可為啥俺們的生產環境才幾百,,,噢,不對幾千而已啊!!
是的 ,上面的測試僅僅是個Hello World而已,所以這就是天花板,你不可能達到的!
我一直在努力找一個相對合適的值,評價公司的系統,而現在,我找到了。4核16G的機器下業務的QPS峰值可能在 2000~5000 QPS[出處StackOverflow:謀篇]

3、結論

評估生產環境的併發高效能,指標就是單臺機器 2000~5000 QPS! 千萬不要為未達到 45K而懊悔了!

引用連結

  1. 口袋程式碼倉庫
  2. 線上計算器
  3. 本節原始碼:github