Asp.net 应用程序池回收复杂性
我们有一个web应用程序,它出现了类型为Asp.net 应用程序池回收复杂性,asp.net,sitecore,application-pool,Asp.net,Sitecore,Application Pool,我们有一个web应用程序,它出现了类型为System.OutOfMemoryException的异常。我们正在寻找解决问题的根本原因 在此之前,我们每周都会执行应用程序池回收,这样就不会发生此事件 每周回收应用程序池是否会给网站带来更多麻烦?在Sitecore网站的web.config中,您可以设置MemoryMonitorHook以清除一些内存: <hooks> <hook type="Sitecore.Diagnostics.MemoryMonitorHook, Sit
System.OutOfMemoryException
的异常。我们正在寻找解决问题的根本原因
在此之前,我们每周都会执行应用程序池回收,这样就不会发生此事件
每周回收应用程序池是否会给网站带来更多麻烦?在Sitecore网站的web.config中,您可以设置
MemoryMonitorHook
以清除一些内存:
<hooks>
<hook type="Sitecore.Diagnostics.MemoryMonitorHook, Sitecore.Kernel">
<param desc="Threshold">800MB</param>
<param desc="Check interval">00:05:00</param>
<param desc="Minimum time between log entries">00:01:00</param>
<ClearCaches>true</ClearCaches>
<GarbageCollect>true</GarbageCollect>
<AdjustLoadFactor>true</AdjustLoadFactor>
</hook>
</hooks>
800MB
00:05:00
00:01:00
真的
真的
真的
这基本上告诉Sitecore在内存使用量超过800MB时开始清除缓存并调用GC。这样,您就不必手动回收应用程序池
如果您担心的不是Sitecore站点,而是它消耗了太多内存,并且由于其他应用程序而不得不回收应用程序池,那么很难判断是否存在复杂性。我们每周也会回收一次应用程序池,不会产生任何问题。显然,我们是在非工作时间和高峰时间进行的。
如果其他应用程序占用了太多内存,您可以尝试将它们放在不同的应用程序池中,这样您就不会干扰网站了?我们实际上每天都进行回收,除了第一个用户的加载时间变慢之外,没有任何不良影响。Daily可能有点太高了,但是有旧的sitecore站点,刚刚开始实践,它已经卡住了。这正是我们这么做的原因:-)我认为现在根本不需要了。呵呵,是的,但我还是发现了很多问题,回收可以解决,因此,我倾向于谨慎行事,每天进行回收(ofc在非高峰时间)。这正是我希望我们的回收会持续很长时间的原因;-)非常感谢你们的朋友