Benchmark.NET現在是衡量.NET程式碼效能的規範工具,可輕鬆分析程式碼段的吞吐量和分配。
.NET團隊對.NET5裡面GC和JIT的持續優化,效能得到大幅提升。通過下圖可以直觀的感受到.NET5的優越效能。
- 純文字效能測試 基準上升了38%,JSON序列化基準上升了+ 42%
- gRPC效能測試 對比其他程式語言的效能測試,可以看出.NET gRPC效能高出Java、C++、Go。
- Blazor WebAssembly 效能測試 JSON序列化與反序列以及列表渲染效能對比,.NET5.0 比.NET3.0版本效能提升至少一倍以上。
自.NET Core 釋出以來,每個大版本中除了修復bug、增加新功能之外,另一個重要的任務就是優化效能。具體參考《.NET Core 2.1中的效能改進》、《.NET Core 3.0中的效能改進》,《.NET 5中的效能改進》。
更多對比結果請參考《.NET平臺系列17 .NET5/Asp.Net Core 在全球Web框架權威效能測試 Web Framework Benchmarks 中的吊炸天表現》
參考文獻:
- Web框架基準:https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=fortune
- .NET5中的效能改進:https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-5/
- .NET3.1中的REST對比GRPC效能測試:https://github.com/thangchung/RESTvsGRPC
- .NET3.0中的效能改進:https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-core-3-0/
- .NET2.1中的效能改進:https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-core-2-1/