【发布时间】:2017-10-12 11:10:13
【问题描述】:
我发现与传统 Asp.Net 相比,Asp.Net 核心的主要优势之一是多倍的性能提升(每秒请求数)。我发现许多基准站点都在谈论 Asp.Net 核心性能,但我不确定性能是基于带有 .Net 核心框架的 Asp.Net 核心还是同样的性能优势适用于 asp.net 核心(完整的 .Net框架)。
任何解释/比较 asp.net core(.Net core)与 asp.net(完整框架)之间性能的想法/文章?
谢谢
【问题讨论】:
-
没有官方基准可以比较它,TechEmpower 仅将 Linux 上的 ASP.NET Core 与其他操作系统进行比较,github.com/aspnet/benchmarks 已经很老了,有一段时间没有更新了。但是您可以获取存储库并按照有关如何生成负载的说明进行操作。不过,您将需要两台物理服务器,一台用于服务器应用程序,一台用于生成负载,因为在同一台机器上执行这两种操作会影响基准测试结果(wrk 工具也使用相当多的资源来生成这么多的请求)
-
感谢@Tseng 提供指向“如何进行基准测试”的指针
-
我看到的关于 asp.net 核心的主要基准是 TechEmpower 纯文本基准。在这种情况下,运行在完整框架或 .net 核心框架上的 asp.net 核心之间不太可能存在性能差异,因为运行的代码可能只是 asp.net 核心代码(即 Kestrel 和 asp.net 核心实现的)
-
不幸的是,这不是真的。 .NET Core 在某些方面比 .NET Framework 快很多,这意味着 .NET Core 上的 ASP.NET Core 比 .NET Framework 快(在相同的场景中) .我们通常会花费更多时间来测试 .NET Core 性能并确保 .NET Framework 性能在一定程度上达到同等水平,但它并没有得到同样多的喜爱,因为我们在框架级别可以做的事情更少。
标签: asp.net-core asp.net-core-mvc .net-core asp.net-core-1.1