天天看點

TechEmpower 21輪Web架構 性能評測 -- C# 的性能 和 Rust、C++并駕齊驅TechEmpower最新一輪的性能測試出爐,ASP.NET Core依舊表現不俗

自從2021年2月第20輪公布的測試以後,一年半後 的2022年7月19日 釋出了 TechEmpower 21輪測試報告:​​Round 21 results - TechEmpower Framework Benchmarks​​。Techempower benchmark是包含範圍最廣泛的web架構性能測試,覆寫了比較典型的使用場景,其可參考性極強。另外,所有測試源代碼和軟硬體配置都開放,基本得到大家的認可。

TechEmpower基準測試有許多場景(也稱為測試類型),此次評測多了一個綜合評分選項,把擁有完整測試覆寫的架構現在将具有綜合分數,這反映了測試項目類型的總體性能得分:JSON serialization, Single-query, Multi-query, Updates, Fortunes 和 Plaintext. 。對于每一輪,我們使每個測試類型的結果規範化,然後為每個測試類型應用主觀權重(例如,Fortunes的權重比 Plaintext 高,因為Fortunes 是一種更現實的測試類型)。asp.net core排第7名,主流排名第3名,asp.net 已經在排行榜裡面找不到了。

​​

TechEmpower 21輪Web架構 性能評測 -- C# 的性能 和 Rust、C++并駕齊驅TechEmpower最新一輪的性能測試出爐,ASP.NET Core依舊表現不俗

​​

asp.net core從去年的綜合得分第八名上升一位到了第7名,排名雖然隻提升1位,但是相對第一名的性能,從去年的 68%提升到了 83.7%,這個提升不可謂不巨大,要知道排前面都是rust, c++選手,已經比較接近了,都在7000級别,另外,論使用量, asp.net core在前10名的架構中毫無疑問是最多的。 性能已經是asp.net core的優勢了,相對java主流架構, go全部架構來看,都是如此,更别說世界上最好的語言PHP了。

表上字首T标簽表示精選的主流程式設計語言:​​https://www.techempower.com/benchmarks/#section=data-r21&test=composite​​

  • 第1名 C++的drogon 7801分
  • 第2名 Rust的actix  7667分
  • 第6名 C#的ASP.NET Core 7077分
  • 第63名 Go的gin  1943分
  • 第67名 Java的Spring 1846分
  • 第113名 基于Elixir的 phoenix 687 分
  • 第116名 Nodejs的Express 615分
  • 第130名 PHP的laravel 371分
  • 第131名 Ruby的 rails 366分
  • 第137名 Python的django 274分

應用性能直接影響到托管服務的成本,是以公司在開發應用時需要格外注意應用所使用的Web架構,初創公司尤其如此。此外,糟糕的應用性能也會影響到使用者體驗,甚至會是以受到相關搜尋引擎的降級處罰。在選擇架構時,又有許多因素需要考量,但原始性能無疑是其中最容易測評的。不同的架構性能差異極大,即使你充分利用了硬體的性能,錯誤的架構依然可能帶來十倍的性能損耗,雖然不是每個人都會遇到如此極端的情況,但在某些情況下确實如此,是以你有必要了解各架構之間的性能差異。

在當今無伺服器和容器的時代,很高興看到行業競争并在冷啟動和記憶體消耗方面進行艱難的測試,PlaintText單項排名很好的展現了這一項:

​​

TechEmpower 21輪Web架構 性能評測 -- C# 的性能 和 Rust、C++并駕齊驅TechEmpower最新一輪的性能測試出爐,ASP.NET Core依舊表現不俗

​​