首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows Server 2012内存限制上的IIS辅助进程

Windows Server 2012内存限制上的IIS辅助进程
EN

Stack Overflow用户
提问于 2015-05-08 16:20:33
回答 1查看 17.2K关注 0票数 6

我有一个在ASP.NET上运行的应用程序,该应用程序托管在Windows 2012下,总物理内存为8GB。

我注意到,随着用户登录到应用程序并执行他们的任务,IIS进程的大小正在显著增加。

我真的不知道如何设置这个应用程序,以避免内存中断或应用程序崩溃。

我的问题是,在具有8GB内存的Windows 2012上,IIS工作进程可以达到的最大大小是多少?

您建议我在32位模式或64位模式下运行应用程序池吗?

您是否建议我使用网络园艺(增加IIS进程的数量)?使用此选项的副作用是什么?

EN

回答 1

Stack Overflow用户

发布于 2017-01-25 09:12:20

这个问题相当广泛,但我认为可以部分回答。

  1. 可能的内存泄漏--如果w3wp进程内存(提交大小或内存)继续增加,即使用户数量不再增加,也可能会泄漏内存。查看这个问题以获得更多详细信息
  2. 应用程序池内存限制-工作进程的最大允许内存可以配置为每个应用程序池、->回收条件、基于->内存的最大值。当达到此内存限制时,将回收应用程序池(发送一个关机事件,并在关闭限制后执行实际关闭(默认情况下为90秒))
  3. 无应用程序池内存限制-在本例中,我认为这个限制将取决于.NET进程可以在特定体系结构上分配多少内存。使用来自这里的信息,在您的特殊情况下,内存限制应该是内存的70%的+ Pagefile

但是,如果内存使用率很高,则还应考虑以下几点:

  • 垃圾收集-当内存使用率相当高且GC介入时,拼命地回收内存,应用程序性能可能会大大降低。
  • 内存消耗并发-如果您有其他需要大量内存的进程(例如Reporting ),您应该考虑显式地为应用程序池设置内存上限
  • 如何检查应用程序池是否由于内存限制而关闭--不完全确定,但我认为当应用程序池由于内存最大到达而被回收时,HostingEnvironment值是作为一个原因发送的。检查这个答案以了解如何将应用程序中的内容连接起来,以捕获应用程序池关闭启动。
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30128481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档