51Degrees内存消耗

时间:2013-08-07 16:13:22

标签: c# .net asp.net-mvc mobile 51degrees

我正在通过51degrees论坛发帖,因为它没有得到太多牵引力。

我继续将51Degrees的最新NuGet包版本实施到我们在这里工作的网站。 (2.19.1.4)我们正试图为本网站带来移动视图的管理(目前由第三方完成)。因此,我们感兴趣的唯一功能是检测。我们通过在配置中注释掉redirect元素来禁用重定向功能,并将日志记录级别修改为Fatal(日志位于App_Data文件夹中)。

据我们了解,这些是唯一需要的改变。这很有效。我们可以根据51degrees提供的信息在桌面和移动设备之间切换布局视图。

在通过DEV和QA进行测试和推广时,我们注意到应用池中的内存消耗增加了,但我们并没有过分担心。标准流量级别的应用程序池在PROD中消耗大约230 MB的内存。它会在高峰时段达到300 MB,所以没什么好担心的,特别是考虑到我们做了大量的InProc缓存。

截至周日,我们将51degreees lite推广到PROD,但禁用了移动视图(我们也在质量保证中这样做了)。我们希望了解它在PROD中的表现以及它在实时环境中对服务器的影响。重申一下,质量保证显示内存使用增加,但我们无法复制PROD负载和差异。

PROD透露了一些担忧。两个前端之一的应用程序池中的内存消耗在一天中缓慢增长,在应用程序池的晚上11点达到峰值,达到560MB。另一个达到490MB。

我们确认问题被隔离到51度,将其从网站上移除,回收并监控另一天。应用程序池内存从未超过300MB。

我们还通过SciTech的内存分析器运行应用程序池以确认。结果显示51Degrees消耗的大部分额外内存高于预期。 (如果需要,我们可以在QA环境中再次运行这些测试。数字会更低,但是它们会画一幅画。)

所以问题:

1)什么能解释这种大量的内存消耗?虽然500-600MB的应用程序池不是世界末日,但让我们的移动检测解决方案超过我们的应用程序池大小的两倍是令人担忧的。 (虽然我们的网站不是最重的交通网站,但它确实收到了相当多的请求)

2)我们是否可以应用任何设置来预防或减少内存消耗?理想情况下,我们希望将51度的内存消耗限制为加载产品和监控传入请求所需的内存。

感谢您的反馈。

0 个答案:

没有答案