1

私の Web アプリケーション アプリケーション プールの構成は PeriodicRestartMemory : 512000 PeriodicRestartPrivateMemory : 196608 です。

仮想メモリの制限はプライベート メモリよりも高くなりますが、アプリ プールはリサイクルされ、(プライベート メモリではなく) 仮想メモリの制限を超えたというエラーがイベント ログに記録されます。

これの理由は何ですか?プライベートメモリの制限を超える前に、仮想メモリの制限をどのように超えることができますか? アプリケーションのプライベート割り当てが制限を超える前に、システムの仮想メモリ内の他の割り当てが制限を超えているようですが、システムの割り当ては何ですか? またはこれの根本的な原因は何ですか。

ありがとう

4

1 に答える 1

2

Tess Ferrandez のブログから:

簡単に言うと、Virtual Bytes はプロセスが予約するメモリで、Private Bytes はプロセスが実際に使用するメモリの量です。

彼女はまた、彼女の投稿「.Net メモリ使用量 - レストランの例え」で、起こりそうな問題について適切に説明しています。

基本的に、あなたのアプリは、割り当て可能なメモリよりも多くのメモリを予約しようとしています - Tess は考えられる原因を調査するための多くの優れた投稿をしています。

于 2010-06-22T11:33:46.877 に答える