2

我们正在测试我们的 ASP.Net AJAX 应用程序,并且发现 Internet Explorer 6 和 7 中的内存使用量在每次页面刷新时至少增加 2mb - 无论是刷新同一页面还是导航到新页面。

这发生在最基本的维护屏幕上,甚至在我们只有应用程序徽标和菜单的主页上(使用 ASP.Net 菜单控件 + CSS 扩展器)。

测试人员报告说,随着内存使用量达到峰值,IE6 的速度有所放缓——当页面被破坏时,似乎没有任何内存被回收。

我一直在浏览 ASP.Net 论坛/进行一些谷歌搜索,并禁用了 CSS 脚本、javascript 包括、脚本管理器控制 - 脚本管理器似乎是我迄今为止发现的最大罪魁祸首......但它有点asp.net ajax 站点所必需的!

当前启用的选项包括脚本管理器上的 web.config、LoadScriptsBeforeUI="false"、ScriptMode="Release" 和 CombineScripts="true" 中的缓存。

当用户刷新页面/导航到新页面时,有什么提示可以回收这些内存和/或停止内存增加?

干杯,

保罗

4

2 回答 2

1

几年前,我使用DRIP实用程序来追踪 IE6 中的漏洞。从那以后,我一直在 IE6 和 IE7 中使用 ASP.NET AJAX 和 JavaScript,在一个拥有 300 多个并发用户 24/7 的 Intranet 站点上没有问题。

确保您的 IE6 版本是最新的补丁(如果您必须运行 IE6!)。

除此之外,Joscha 建议的文章是您最好的选择。大多数泄漏是由除 ASP.NET AJAX 之外的 JavaScript 引起的,我没有发现它有问题。

于 2010-05-11T22:03:20.760 回答
0

看看这篇文章——那里解释的内容适用于所有浏览器,但 IE 是内存泄漏方面最糟糕的。也许您可以找到您在应用程序中经常使用的模式,并且只需更正它即可为您节省 2 兆。

于 2010-05-11T11:53:38.297 回答