从ASP.NET Core 2.1到整个.NET框架的性能改进?

时间:2018-07-31 07:00:53

标签: asp.net-core .net-core asp.net-core-2.0

我有一个基于ASP.NET Core 2.0的现有项目,该项目在完整的.NET框架上运行。我的案例的Microsoft文档是here。该应用程序将Kestrel与libuv一起使用来提供传入连接。

从理论上讲,ASP.NET Core 2.1如何改善/降低我的案子的性能?

我的项目在完整的.NET Framework 4.7.2上运行。在我看来,Performance Improvements in .NET Core 2.1不会使它受益。对吧?

还提到了ASP.NET Core 2.1发行说明。

  

托管套接字将libuv替换为Kestrel的默认传输方式。

这对在完整.NET框架上运行的应用程序有很大的不同吗?

1 个答案:

答案 0 :(得分:1)

您是正确的。由于您在.NET Framework上运行,因此不受.NET Core 2.1进行的性能改进的影响。尽管发生了一些更改,但最终还是会(至少部分)将这些更改最终引入.NET Framework,但我们还没有出现。

如果要获得最佳性能,则应使用.NET Core,它将始终是进行最大改进并首先进行改进的运行时。

但是,这并不意味着.NET Framework运行缓慢或任何其他问题。过去,已经在.NET Framework上构建了无数应用程序,其中还包括许多对性能至关重要的东西。甚至Stack Overflow当前都在.NET Framework上运行。因此,仅因为.NET Core可以更快,这并不会使.NET Framework变坏。在完整的框架上运行非常好。

话虽如此,ASP.NET Core 2.1当然也包含可能影响性能的更改。尽管大多数宣布的速度改进来自.NET Core 2.1的更改,但是如果有其他更改也显示出明显的改进,也就不足为奇了。套接字传输层就是其中之一。

无论性能如何提高,您都应该从2.0升级到2.1。 .NET Core 2.0和ASP.NET Core 2.0将reach EOL on October 1st 2018。因此,到那时,如果要获得Microsoft的支持,应该已经升级。