2

ASP.Net AJAX アプリケーションのテストを実施しており、Internet Explorer 6 および 7 では、同じページを更新するか、新しいページに移動するかに関係なく、ページを更新するたびにメモリ使用量が少なくとも 2 MB 増加することがわかりました。

これは、最も基本的なメンテナンス画面で発生し、アプリケーション ロゴとメニュー (ASP.Net メニュー コントロール + CSS エクステンダーを使用) しかないメイン ページでも発生します。

テスターは、メモリ使用量がピークに達すると IE6 で速度が低下することを報告しています。ページが破棄されたときにメモリが再利用されていないようです。

私はASP.Netフォーラムを見回したり、いくつかのグーグルを行ったりして、CSSスクリプト、javascriptインクルード、スクリプトマネージャーコントロールを1つずつ無効にしました-スクリプトマネージャーは私がこれまでに見つけた最大の原因のようです...しかし、それはちょっとasp.net ajax サイトに必要です!

現在有効になっているオプションは、web.config のキャッシュ、LoadScriptsBeforeUI="false"、ScriptMode="Release"、およびスクリプト マネージャーの CombineScripts="true" です。

ユーザーがページを更新したり、新しいページに移動したりするときに、このメモリの一部を再利用したり、メモリの増加を止めたりするためのヒントはありますか?

乾杯、

ポール

4

2 に答える 2

1

数年前、私はDRIPユーティリティを使用してIE6のリークを追跡しました。私は、IE6とIE7の両方で、24時間年中無休で300人以上の同時ユーザーがいるイントラネットサイトで問題なくASP.NETAJAXとJavaScriptを使用しています。

IE6のバージョンが最新のパッチであることを確認してください(IE6を実行する必要がある場合)。

それ以外は、Joschaが提案した記事が最善の策です。ほとんどのリークは、バグがあるとは思わないASP.NETAJAX以外のJavaScriptが原因で発生します。

于 2010-05-11T22:03:20.760 に答える
0

この記事を見てください- そこで説明されていることはすべてのブラウザに当てはまりますが、メモリ リークに関しては IE が最悪です。アプリケーションで非常に頻繁に使用しているパターンを見つけることができ、これを修正するだけで 2 メガ節約できます。

于 2010-05-11T11:53:38.297 に答える