2

当社の製品は、MemoryCacheオブジェクトに保持されるインメモリ オブジェクト データ セットに基づいています。

キャッシュに格納されたデータによって消費されるメモリの量を知りたいです。

製品の複数のインスタンスが同じマシン上で (それぞれ独自のアプリケーション ドメイン内で) 実行されている可能性があるため、誰が何を消費しているかをすぐに確認することが重要です...

このクラスには、CacheMemoryLimit や PhysicalMemoryLimit などのプロパティがありますが、メモリの消費量を知らせるプロパティはありません。

前もって感謝します!

4

1 に答える 1

2

メモリを検査する最善の方法は、WinDbg + SOS/Psscor を使用することです。特に、 Tess のこの記事では、MemoryCache の検査を自動化するスクリプトを提供します。

ただし、これらのツールと .net の内部構造に慣れていない場合は、環境をセットアップしてその仕組みを理解するのに数時間を費やすのが一般的です。

もう 1 つの方法は、ここから入手できる Debug Tools 2.0 を使用することです。ワーカー プロセスのメモリ ダンプを作成し (タスク マネージャー/右クリック/ダンプ ファイルの作成)、メモリ分析を選択するだけです。このレポートには、処理中の Web キャッシュのサイズセクションが含まれています。

ライブ メモリ インスペクションを実行する場合は、.net チームのClrMDを使用できます。紹介はこちらから入手できます。

于 2013-12-17T12:28:12.237 に答える