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是否获得了所有这些不错的功能? 有人请为我澄清一下吗?我似乎无法找到这些问题的明确答案. 解决方法
不,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 Web Api:项目需要SQL Server Express
- asp.net-core – 外部包中的模型显示在swagger文档中
- 当空的asp.net时,ListView LayoutTemplate不显示
- asp.net-mvc – 使用ASP.NET MVC中绝对路径访问视图
- asp.net – Safari浏览器忽略我的无缓存
- asp.net – Web Api 2:“样例不可用”
- asp.net – 为什么DataBind()方法是必要的?
- asp.net – 共享.NET应用程序池
- asp.net-core – 使用.net核心进行Hangfire依赖注入
- asp.net-mvc – TDD:在ASP.NET MVC 3中测试DataAnnotation
- 实体框架 – WebApi OData:$filter’any’或’a
- asp.net – web.config转换中的匹配元素名称
- asp.net-mvc – ASP.NET MVC在Html帮助器中使用部
- asp.net – 如何使ASP CheckBoxList标签与复选框
- asp.net-mvc-3 – 依赖注入与多个类实现的接口
- asp.net – 在集成模式下替换HttpContext.Curren
- 标签 – 如何使用像asp这样的Razor:Literal?
- asp.net – MVC控制器和视图应该有1到1的关系吗?
- 在将所有websocket数据发送到客户端之前,ASP.NET
- asp.net-mvc – Linq选择语句 – 不在的地方
