zoukankan      html  css  js  c++  java
  • .NET平台系列15 .NET5的吊炸天性能改进

    .NET5的性能改进测试功能

    Benchmark.NET现在是衡量.NET代码性能的规范工具,可轻松分析代码段的吞吐量和分配。

    .NET5的性能改进

      .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/

    成在管理,败在经验;嬴在选择,输在不学!  贵在坚持!

    欢迎关注作者头条号 张传宁IT讲堂,获取更多IT文章、视频等优质内容。

       

     个人作品

       

        1、BIMFace.Community.SDK.NET

         开源地址:https://gitee.com/NAlps/BIMFace.SDK

         系列博客:https://www.cnblogs.com/SavionZhang/p/11424431.html

         系列视频:https://www.cnblogs.com/SavionZhang/p/14258393.html

       

        2、ZCN.NET.Common

         开源地址:https://gitee.com/NAlps/zcn.net.common

     技术栈

       

     1、Visual Studio、.C#/.NET、.NET Core、MVC、Web API、RESTful API、gRPC、SignalR、Python

     2、jQuery、Vue.js、Bootstrap

     3、数据库:SQLServer、MySQL、PostgreSQL、Oracle、SQLite、Redis、MongoDB、ElasticSearch、TiDB、达梦DM、人大金仓、 神通、南大通用 GBase、华为 GaussDB 、腾讯 TDSQL 、阿里 PolarDB、蚂蚁金服 OceanBase、东软 OpenBASE、浪潮云溪数据库 ZNBase

     4、ORM:Dapper、Entity Framework、FreeSql、SqlSugar、分库分表、读写分离

     5、架构:领域驱动设计 DDD、ABP

     6、环境:跨平台、Windows、Linux(CentOS、麒麟、统信UOS、深度Linux)、maxOS、IIS、Nginx、Apach

     7、移动App:Android、IOS、HarmonyOS、微信、小程序、快应用、Xamarin、uni-app、MUI、Flutter、Framework7、Cordova、Ionic、React Native、Taro、NutUI、Smobiler

       

     云原生、微服务、Docker、CI/CD、DevOps、K8S;

     Dapr、RabbitMQ、Kafka、分布式、大数据、高并发、负载均衡、中间件、RPC、ELK;

     .NET + Docker + jenkins + Github + Harbor + K8S;

    出处:www.cnblogs.com/SavionZhang

    作者:张传宁   微软MCP、系统架构设计师、系统集成项目管理工程师、科技部创新工程师。

              专注于微软.NET技术(.NET Core、Web、MVC、WinForm、WPF)、通用权限管理系统、工作流引擎、自动化项目(代码)生成器、SOA 、DDD、 云原生(Docker、微服务、DevOps、CI/CD);PDF、CAD、BIM 审图等研究与应用。

              多次参与电子政务、图书教育、生产制造等企业级大型项目研发与管理工作。

              熟悉中小企业软件开发过程:需求分析、架构设计、编码测试、实施部署、项目管理。通过技术与管理帮助中小企业快速化实现互联网技术全流程解决方案。

             


             

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

    如有问题,可以通过邮件905442693@qq.com联系。共同交流、互相学习。

    如果您觉得文章对您有帮助,请点击文章右下角【推荐】。您的鼓励是作者持续创作的最大动力!

  • 相关阅读:
    how to uninstall devkit
    asp.net中bin目录下的 dll.refresh文件
    查找2个分支的共同父节点
    Three ways to do WCF instance management
    WCF Concurrency (Single, Multiple, and Reentrant) and Throttling
    检查string是否为double
    How to hide TabPage from TabControl
    获取当前系统中的时区
    git svn cygwin_exception
    lodoop打印控制具体解释
  • 原文地址:https://www.cnblogs.com/SavionZhang/p/14805599.html
Copyright © 2011-2022 走看看