.NET平台系列16 .NET5/Asp.Net Core 在全球Web框架权威性能测试 Web Framework Benchmarks 中的吊炸天表现

TechEmpower Web Framework Benchmarks 是许多Web应用程序框架执行基本任务(如JSON序列化、数据库访问和服务器端模板组合)的性能比较的专业网站。每个框架都在实际的生产配置中运行。结果在云实例和物理硬件上捕获。测试实现主要是由社区贡献的,所有源都可以在GitHub存储库中使用。
用“框架”这个词来泛指平台、微框架和全栈框架。
在2013年3月的一篇博客文章中,我们发布了几个执行简单但有代表性的任务的Web应用程序框架的性能比较结果:序列化JSON对象和查询数据库。从那时起,社区投入巨大。我们现在所说的所有项目贡献者都定期更新测试实现,扩大覆盖范围,并在半定期更新中捕获结果,我们称之为“轮次”。
我们期望所有框架的测试都能通过社区的投入得到改进。因此,我们非常高兴收到任何框架的粉丝们的请求。我们希望我们对每个框架的测试都能达到最佳效果,因此我们邀请您加入。
反馈持续不断,我们计划通过以下几种方式不断更新项目,例如:
- 覆盖更多框架。由于迄今为止社区的贡献,所涵盖的框架数量已经相当大。如果您提交拉取请求,我们很乐意添加更多内容。
- 其他测试类型。
- 测试更多类型的硬件。
- 此网站结果的功能增强。
我们的目标是根据从文档和流行社区意见中收集的生产部署最佳实践来配置每个框架,并要求贡献者应用相同的经验法则。我们希望每个测试实现(请参阅“术语”部分)尽可能准确地接近合理的生产部署。我们还希望这个项目尽可能透明,所以我们在GitHub上发布了我们的测试套件。
这个项目测量两种常见部署场景的性能:云实例和物理硬件。到目前为止,每一轮都为这些场景使用了一个具有代表性的环境。环境的特定规范随着时间的推移而变化,如下所示:
- 云环境
- Azure(第13轮之后)Microsoft Azure D3v2实例;交换千兆以太网。
- AWS(第1轮至第12轮)amazonec2.c3大型实例(每个实例2个vCPU);交换千兆以太网(第9轮使用m1.large)。
- 物理硬件环境
- Citrine (rounds 16 onward) 三台同构的Dell R440服务器,每台都配备Intel Xeon Gold 5120 CPU、32 GB内存和企业级SSD。专用Cisco万兆以太网交换机。由Microsoft提供。
- ServerCentral (rounds 13 through 15) Dell R910(4x 10核Intel Xeon E7-4850 CPU)应用服务器;Dell R710(2x 4核Intel Xeon E5520 CPU)数据库服务器;交换式万兆以太网。由服务器中心提供。
- Peak (rounds 9 through 12) Dell R720xd dual Intel Xeon E5-2660 v2(40个HT内核),32 GB内存;RAID中配备SSD的数据库服务器;交换式万兆以太网。由Peak Hosting提供。
- i7 (rounds 1 through 8) 内部Intel Sandy Bridge Core i7-2600K工作站,8 GB内存(2011年初);数据库服务器配备三星840 Pro SSD;交换千兆以太网。
从上表测试结果中可以明显看到多次测试中 ASP.NET Core 综合测试排行一直名列前茅,其他单项测试中文本性能异常优秀,主要归功于.NET 团队对 CoreCLR 的不断深度改进与优化等方面做出的努力。
详细测评结果参考下列最新测评轮次。
- 综合测评(物理机器):第8名

- 综合测评(云服务器):第7名

- 普通文本测评(物理机器):第2名

- 普通文本测评(云服务器):第14名

其他轮次测评详细结果请参考:https://www.techempower.com/benchmarks/#section=data-r20&hw=cl&test=plaintext
参考文献:
- https://www.techempower.com/benchmarks/
.NET平台系列16 .NET5/Asp.Net Core 在全球Web框架权威性能测试 Web Framework Benchmarks 中的吊炸天表现的更多相关文章
- .NET平台系列15 .NET5的吊炸天性能改进
系列目录 [已更新最新开发文章,点击查看详细] .NET5的性能改进测试功能 Benchmark.NET现在是衡量.NET代码性能的规范工具,可轻松分析代码段的吞吐量和分配. .NET5的性能 ...
- .NET平台系列13 .NET5 统一平台
系列目录 [已更新最新开发文章,点击查看详细] 时机决定一切,对于 .NET5 也是如此.实际上微软.NET团队在开始开发 .NET Core 时,对 .NET Framework 的全面重写 ...
- 探索 ASP.Net Core 3.0系列三:ASP.Net Core 3.0中的Service provider validation
前言:在本文中,我将描述ASP.NET Core 3.0中新的“validate on build”功能. 这可以用来检测您的DI service provider是否配置错误. 具体而言,该功能可检 ...
- 探索ASP.Net Core 3.0系列六:ASP.NET Core 3.0新特性启动信息中的结构化日志
前言:在本文中,我将聊聊在ASP.NET Core 3.0中细小的变化——启动时记录消息的方式进行小的更改. 现在,ASP.NET Core不再将消息直接记录到控制台,而是正确使用了logging 基 ...
- 【翻译】在Visual Studio中使用Asp.Net Core MVC创建你的第一个Web API应用(一)
HTTP is not just for serving up web pages. It's also a powerful platform for building APIs that expo ...
- [转]【翻译】在Visual Studio中使用Asp.Net Core MVC创建你的第一个Web API应用(一)
本文转自:https://www.cnblogs.com/inday/p/6288707.html HTTP is not just for serving up web pages. It’s al ...
- asp.net core 集成 log4net 日志框架
asp.net core 集成 log4net 日志框架 Intro 在 asp.net core 中有些日志我们可能想输出到数据库或文件或elasticsearch等,如果不自己去实现一个 Logg ...
- Blazor——Asp.net core的新前端框架
原文:Blazor--Asp.net core的新前端框架 Blazor是微软在Asp.net core 3.0中推出的一个前端MVVM模型,它可以利用Razor页面引擎和C#作为脚本语言来构建WEB ...
- ASP.NET Core的身份认证框架IdentityServer4--入门
ASP.NET Core的身份认证框架IdentityServer4--入门 2018年08月11日 10:09:00 qq_42606051 阅读数 4002 https://blog.csdn ...
随机推荐
- Day14_80_反射机制+IO+Propreties动态创建对象
反射机制+IO+Propreties动态创建对象 * 使用Properties文件,在文件中通过<key value>的形式保存一下类名,然后通过IO 获取该类名,再然后利用反射机制得到该 ...
- 手把手教你SonarQube入门安装与使用
简介 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. Sonar 不只是一个质量数据报告工具,更是代码质量管理平台. 支持Java, C#, C/C++, PL/SQL, C ...
- (7)MySQL进阶篇SQL优化(InnoDB锁-事务隔离级别 )
1.概述 在我们在学习InnoDB锁知识点之前,我觉得有必要让大家了解它的背景知识,因为这样才能让我们更系统地学习好它.InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION ...
- 06- 移动端APP兼容性测试以及APP兼容性测试手机选择与云测试技术
在开始测试APP之前,应该考虑什么问题?或者如何选择设备?多少部手机测试兼容性最佳? 兼容性测试手机数量:主测手机 1 ,2(根据人员),辅助测试手机:用于兼容性测试.(50-60台最佳,至少5-20 ...
- hdu1251 hash或者字典树
题意: 统计难题 Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量 ...
- 手机改 user模式为debug模式
logcat 是Android中一个命令行工具,可用于监控手机应用程序的log信息.网上相关的教学很多,这里只想把自己折腾 2 部手机(一个是三星S4 I9500 港水,Android 5.01,一个 ...
- ART模式下基于dex2oat脱壳的原理分析
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78513483 一般情况下,Android Dex文件在加载到内存之前需要先对dex ...
- ASLR 的关闭与开启(适用于 Windows7 及更高版本)
ASLR 是一种针对缓冲区溢出的安全保护技术,通过对堆.栈.共享库映射等线性区布局的随机化,通过增加攻击者预测目的地址的难度,防止攻击者直接定位攻击代码位置,达到阻止溢出攻击的目的的一种技术 有的时候 ...
- 如何绕过WAF
目录 HTTP报文包体的解析 Transfer-Encoding Charset 溢量数据 HTTP协议兼容性 HTTP请求行种的空格 HTTP 0.9+Pipelining Websocket.HT ...
- java之Map的使用
Map的实现类有很多,其中较为常见的有HashMap,HashTable,LinkedHashMap,TreeMap,下面分别对这几个类进行简单的分析: 1.HashMap HashMap的结构数组+ ...