asp.net – 具有w3wp应用程序池IIS 7的高内存使用率
我有一个网站应用程序运行在它自己的IIS 7.0上的应用程序池。该应用程序是一个ASP.NET MVC 3网站。
我注意到这个应用程序的内存使用相应的w3wp IIS工作服务相当高(800 MB,有一些波动)。 我正在尝试诊断问题,并尝试过以下操作: 我在IIS级别禁用了网站的输出页面缓存,然后再次使用应用程序池。这将导致w3wp进程重新启动。这个进程的内存使用量慢慢地爬升到大约800 MB,大概需要30秒左右的时间。目前没有处理任何页面请求。当我从IIS重新启动网站时,进程的内存大小不会改变。 我已经尝试从VS 2010运行应用程序的调试副本,内存使用没有问题。 我有一些想法/问题是: 这个问题是否与网站代码相关? – 考虑到任何页面请求之前的内存火箭已经发送/处理,我认为这不是一个代码问题? MVC中内置的应用程序没有处理缓存中写入的内容。 该网站使用实时显示数据,它定期使用ajax请求,并且通常长时间“打开”。 为什么在应用程序被回收之后内存使用量将会上升,并且不会发送用户请求?这是因为它将旧的缓存信息加载到磁盘的内存中吗? 应用程序不会崩溃,我只是关心内存使用,这不是一个大的网站… 任何想法/帮助与这个问题的底部将不胜感激。 解决方法
我只是看我的服务器和我的池使用900-1000MB虚拟大小的内存和380MB工作集。我的网站运行顺利,出了问题多年了,我已经从各方面检查了。我的池永远不会回收,服务器运行,直到下一次更新继续40%稳定的免费物理内存。
如果你的内存没有持续增长,那么这个内存就是你的应用程序中的代码加上你设置为静态,常量,字符串和可能的缓存的数据。 您可以使用process explorer查看工作和虚拟大小内存。 您还可以考虑根据您的代码运行配置文件,以查看是否有任何“内存泄漏”或其他问题。从google找到一个:https://www.google.com/search?hl=en&q=asp.net+memory+profiler。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- .net – 即时生成站点地图
- asp.net-mvc – 使用Dotnetopenauth的自定义配置文件提供程
- 认证和授权在ASP.NET MVC 5
- asp.net – Application_AuthenticateRequest总是在Session
- asp.net-core-mvc – MVC 6配置验证
- asp.net – 将包含子集合的DTO映射回域模型的设计模式
- asp.net-web-api – AttributeRouting不能与HttpConfigurat
- asp.net-mvc – MVC 4中的SQL Server Express数据库文件自动
- 如何合理地构建我的ASP.NET MVC 2项目与区域
- asp.net-mvc – 自动发布使用TFS和MSBuild构建,无需调试文件
- asp.net-mvc – ASP.NET MVC必需字段指示符
- asp.net-mvc – 在SignalR Core中更改全局设置配
- asp.net-mvc – ASP.NET MVC / IIS 7.5:500内部
- asp.net – Inno安装IIS安装和配置
- asp.net-mvc – MVC 4提供的反伪造令牌是为用户“
- asp.net-mvc-3 – 实体框架乐观并发异常未发生
- asp.net – 使用javascript调整大小的Gridview列
- 在asp.net中RequiredFieldValidator Text和Error
- asp.net文件上载在加载页面时重置了与服务器的连
- 在ASP.Net动态数据中使用Computed Property作为D