IIS8.5上的站点,内存一直增长,但是托管内存并没有增长……

游北亮
博客专家认证
2017-12-01 10:34:50
如下图,一台机器上的w3wp进程,内存以几kb的增量不断上涨,
昨天晚上一个晚上没人访问,内存从100M涨到了600M,但是用DotMemory分析,托管内存几乎没有变化……


求教这种是啥情况?
我也在任务管理器里把进程做了dump,然后用vs打开,也只能看到托管内存的那几兆数据,那几百兆都看不到……
...全文
303 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
游北亮 2017-12-01
  • 打赏
  • 举报
回复
引用 2 楼 tangyanzhi1111 的回复:
w3p.exe是一个应用程序池,他运行一个实例程序之后,线程不会被释放,他会回到线程池中等待下一个请求,他这个池的数量有大小限制。 当你前一段时间大量的实例化网站,他线程池创造了大量线程。你网站不再访问之后,在一定时间内会内存暴涨 默认情况下,系统应该是20分钟干掉一次这货,你如果没配置好,另当别论。 托管实际上用的就是非托管内存,拖只是一个概念。
感谢答复,我的验证是新建的网站, 仅仅是在 IISReset 后,访问了一次首页,就不再对它进行访问, 在不存在任何流量的情况下,它的内存占用也在不断增长,过一个晚上会翻10倍……
江湖评谈 2017-12-01
  • 打赏
  • 举报
回复
w3p.exe是一个应用程序池,他运行一个实例程序之后,线程不会被释放,他会回到线程池中等待下一个请求,他这个池的数量有大小限制。 当你前一段时间大量的实例化网站,他线程池创造了大量线程。你网站不再访问之后,在一定时间内会内存暴涨 默认情况下,系统应该是20分钟干掉一次这货,你如果没配置好,另当别论。 托管实际上用的就是非托管内存,拖只是一个概念。
游北亮 2017-12-01
  • 打赏
  • 举报
回复
刚才用VS2017,创建了一个webapi默认项目, 没有添加任何代码逻辑, 以Release模式发布后,扔到服务器上,同样存在内存增长问题,句柄数也在不断增长, 难道是WindowsServer2012 R2 IIS8.5本身有内存泄露?还是说IIS做了什么缓存??? 找了一台Windows Server2016的版本,问题同样存在! 时间一长,从一开始的几十兆就增长到上百兆了, 因为服务器上站点较多,担心高峰时,多个站点内存竞争,导致不够用了…… 哪位大侠知道的?

62,016

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧