应该将ASP.NET应用程序池设置为自动回收?
发布时间:2020-12-15 20:02:00 所属栏目:asp.Net 来源:网络整理
导读:我有一些ASP.NET(4.0)Web应用程序似乎在每个请求期间泄漏(少量)的内存.这是一个很小的数量,对于大多数用例,它不会成长成为一个问题,一个星期甚至几个月.我通常尝试关闭应用程序管理的任何连接,避免状态变量(或单例的实例变量)等. 我的问题是这是ASP.NET应用
我有一些ASP.NET(4.0)Web应用程序似乎在每个请求期间泄漏(少量)的内存.这是一个很小的数量,对于大多数用例,它不会成长成为一个问题,一个星期甚至几个月.我通常尝试关闭应用程序管理的任何连接,避免状态变量(或单例的实例变量)等.
我的问题是这是ASP.NET应用程序的这种正常行为吗?我已经关闭了在空闲20分钟后回收应用程序池的默认(IIS 7)行为.我这样做是因为应用程序需要几分钟的时间来构建其内部缓存,我想避免对用户体验造成负面影响(并让他们等待应用程序在发出请求时启动). 我知道这可以通过序列化缓存或加快缓存生成过程来缓解,但是我的问题更多地与其原理相关:我个人认为依靠IIS自动回收功能作为带状方法.我错了吗?我只是没有看到垃圾收集器在工作,因为应用程序的内存使用量不够高,相比可用的内存量?或者我应该深入了解内存问题? 任何见解将不胜感激. 解决方法
不幸的是,这是正常的,虽然大多数是比其他任何事情要好的应用程序作者.
由于这个原因,默认情况下,IIS会将新创建的应用程序池配置为每1740分钟循环一次. 正如你所说,这是一个帮助.清除所有资源(包括悬挂事件处理程序)的一个很好的书面应用程序,根本不应该泄漏. 请参阅this博客文章. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 验证 – 关于构建asp.net mvc应用程序的建议
- asp.net-mvc-3 – 从ASP的Ajax.ActionLink获取JSonResult
- asp.net – 扩展方法必须在非泛型静态类中定义
- 基于声明的身份 – 在asp.net MVC5 EF6中使用流畅的api映射
- asp.net-mvc – 使用ASP.NET MVC的Piranha CMS路由问题
- asp.net core 系列 12 选项 TOptions
- asp.net-mvc-3 – 找不到概念模型类型
- asp.net – IE8 Win7 Facebook Connect问题
- Asp:文本框与输入文本(PHP开发人员学习ASP)
- asp.net-mvc – 如何使用SQL Server Enterprise Edition在a
推荐文章
站长推荐
热点阅读