加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 具有w3wp应用程序池IIS 7的高内存使用率

发布时间:2020-12-15 18:31:46 所属栏目:asp.Net 来源:网络整理
导读:我有一个网站应用程序运行在它自己的IIS 7.0上的应用程序池。该应用程序是一个ASP.NET MVC 3网站。 我注意到这个应用程序的内存使用相应的w3wp IIS工作服务相当高(800 MB,有一些波动)。 我正在尝试诊断问题,并尝试过以下操作: 我在IIS级别禁用了网站的输
我有一个网站应用程序运行在它自己的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。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读