asp.Net   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ASP.NET 5针对dnx451 / dnx46性能大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
使用ASP.NET 5,一切都被认为是基于选择,应用程序只加载选择的库,这是惊人的.较旧的ASP.NET功能封装在system.Web命名空间中,该命名空间具有构建ASP.NET应用程序所需的一切.将所有未使用的库填充到内存中是一个真正的成本,因此ASP.NET 5方法是选择您需要的内容而不是使用未使用的代码的大型库.

我的问题:

>这种选择性方法和性能改进是否仅适用于面向.NET CORE的ASP.NET 5?或者,针对Windows上的完整框架的ASP.NET 5是否获得了所有这些不错的功能?
>当定位dnx451或dnx46时,它们是否依赖于System.web并且所有未使用的库仍然像旧版本的ASP.NET一样加载到内存中?
> ASP.NET 5据称每个请求大约需要2kb内存,而旧版本的ASP.NET每个请求需要30kb内存.只有在针对dnxcore50时才能实现这种出色的性能提升吗?或者这也是dnx451 / dnx46的情况?
>在IIS 7.5上运行ASP.NET 5 dnx46时,System.web是否仍未加载? (不确定,但我认为IIS和System.web是集成的,如果我错了,请纠正我).
>最后,ASP.NET 4.6应用程序和在ASP.NET 5上运行的应用程序(dnx46)之间有什么区别?后者对另一方有什么改进?

有人请为我澄清一下吗?我似乎无法找到这些问题的明确答案.

解决方法

不,ASP.NET 5提供的很大一部分改进也适用于DNX451(也就是“完整框架”版本). Kestrel(用于ASP.NET 5的新“通用”Web服务器)尤其如此,其中大量RPS改进对两个版本都有影响.

不会.使用新的托管层,即使使用IIS,也永远不会加载System.Web.

由于社区在Kestrel所做的出色工作,自第一次测试以来,分配(以及“每个请求的字节数”)大幅减少,这对两个版本都有影响.使用COreCLR更有可能帮助减少托管整个应用程序所需的内存(因为您引用了较轻的程序集),但是对“每个请求的字节数”的影响应该是难以察觉的.

当然,CoreCLR的影响主要取决于你的项目中有多少引用:在大多数情况下,内存增益应该是微不足道的(你有更轻的组件,但由于CoreCLR完全模块化的特性,它们更多众多).

不,由于新的托管层(IIS的先前集成,Helios,用于加载System.Web,但httpPlatformHandler不再适用).请注意,IIS不再“托管”您的应用程序:它现在只是充当反向代理.实际上,所有内容都在一个单独的DNX工作进程中处理,由IIS启动和监视.

在新堆栈上托管“ASP.NET 4.6应用程序”将是一件复杂的事情(如果不是不可能的话),特别是如果它依赖于System.Web并且不使用像OWIN这样的抽象层(ASP.NET 5提供兼容性)与OWIN层).

大佬总结

以上是大佬教程为你收集整理的ASP.NET 5针对dnx451 / dnx46性能全部内容,希望文章能够帮你解决ASP.NET 5针对dnx451 / dnx46性能所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。