Windows Elastic Compute Service (ECS) インスタンスでメモリ使用率が高いことが原因で、システムの動作が遅くなるなどの問題が発生する場合は、このトピックで説明する手順に従って原因を特定し、問題を解決できます。
次の例では、Windows 2022 を使用しています。操作は Windows のバージョンによって異なる場合があります。
問題の説明
Windows オペレーティングシステムを実行している ECS インスタンスでは、システムの動作が遅くなったり、内部サービスの応答が遅くなったりすることがあります。 ECS コンソールでインスタンスメモリをクエリすると、メモリ使用率が高いか、メモリ使用率が高いというアラートが表示されます。
原因
この問題は、次のいずれかの理由が原因である可能性があります。
異常なプロセスまたはサービスが大量のメモリを消費している。
インスタンス上のアプリケーションの負荷が高く、インスタンスの物理メモリが不足している。
問題のトラブルシューティング
メモリ使用率が高い問題を解決するには、次の操作を実行します。
インスタンスの合計メモリ使用量を表示する
Windows にプリインストールされている [タスク マネージャー] を使用して、メモリ使用量を表示できます。
Windows タスクバーの検索ボックスに、[タスク マネージャー] と入力し、
Enter
キーを押して [タスク マネージャー] を開きます。[タスク マネージャー] ウィンドウで、[パフォーマンス] タブをクリックし、左側のペインで [メモリ] をクリックしてメモリ使用量を表示します。
プロセスで使用されているメモリの詳細を表示する
Windows にプリインストールされている [リソース モニター] を使用して、メモリなどのリソースの使用状況をクエリできます。個々のプロセスのメモリ使用量を表示できます。
Windows タスクバーの検索ボックスに、[リソース モニター] と入力し、
Enter
キーを押して [リソース モニター] を開きます。[リソース モニター] ウィンドウで、[メモリ] タブをクリックして、各プロセスのメモリ使用量を表示します。 [コミット (KB)] 列でメモリサイズを表示して、より多くのメモリを消費しているプロセスを特定し、実際のビジネスシナリオに基づいてプロセスが正常かどうかを判断できます。
物理メモリには、次のメモリが含まれます。
ハードウェア予約メモリ: ハードウェアデバイス用に予約されている物理メモリ。これらのデバイスには、GPU、サウンドカード、ネットワークインターフェースカード (NIC)、Bluetooth モジュールが含まれます。予約されたメモリは、通常の動作を保証するためにハードウェアデバイスに割り当てることができますが、通常のアプリケーションでは直接使用できません。
使用中のメモリ: プロセス、ドライバー、およびオペレーティングシステムによって使用されているメモリ。
変更されたメモリ: 割り当てる前にデータをディスクに書き込む必要があるメモリ。
スタンバイメモリ: 未使用のキャッシュデータとコードを含むメモリ。
空きメモリ: 有効なデータを含まず、プロセス、ドライバー、またはオペレーティングシステムがより多くのメモリを要求したときに優先的に使用されるメモリ。
キャッシュメモリ: ファイルを開くと、システムは後続の読み取りおよび書き込み操作を高速化するためにファイルをキャッシュに保存します。 Windows 2008 R2 以降のバージョンでは、一部の物理メモリをキャッシュで使用できません。これにより、キャッシュが大きすぎる場合でも、アプリケーションに十分な物理メモリが確保されます。
システムプロセスで使用されているメモリの詳細を表示する
[タスク マネージャー] と [リソース モニター] で大量のメモリを消費するプロセスがなく、インスタンスのメモリ使用率が高いままの場合は、システムプロセスがメモリを消費しすぎている可能性があります。この場合は、Microsoft が提供する RamMap ツールを使用してさらに分析します。たとえば、このツールを使用して、システムプロセスの Random Access Memory (RAM) にキャッシュされたファイルデータの量と、カーネルおよびデバイスドライバーによって使用される RAM の量をクエリします。
[RamMap] パッケージをダウンロードして解凍します。
Microsoft 公式 Web サイトで RamMap ツールをダウンロード し、パッケージを解凍します。
[RamMap] ツールをダブルクリックして [RamMap] を起動し、メモリ使用量の詳細を表示します。
[RamMap] は、次のリソース使用状況情報を表示します。
Use Counts: メモリタイプとページごとのメモリ使用量の要約を表示します。
Processes: プロセスワーキングセットのサイズを表示します。
Priority Summary: メモリの優先順位ごとのメモリサイズを表示します。
Physical Pages: すべての物理メモリのページごとの使用状況を表示します。
Physical Ranges: 物理メモリアドレスを表示します。
File Summary: ファイルごとの RAM 内のデータを表示します。
File Details: ファイルごとの個々の物理ページを表示します。
問題の解決
次の表に、メモリ使用率が高い問題の原因と解決策を示します。
問題 | 原因 | 解決策 |
単一のプログラムまたはプロセスが長期間にわたって大量のメモリを消費している。 | プログラムが異常であり、そのプロセスがメモリを消費しすぎている。 | [タスク マネージャー] または [リソース モニター] でプログラムまたはプロセスを見つけ、プログラムまたはプロセスを右クリックして、[タスクの終了] をクリックします。 警告 プログラムまたはプロセスを終了する前に、ビジネスの中断を防ぐために、プログラムまたはプロセスに関する情報を確認してください。慎重に進んでください。 |
| インスタンス上のサービスは、インスタンスの物理メモリ容量を超える容量のメモリを必要としています。 | インスタンスタイプを評価してアップグレードし、物理メモリを増やすことをお勧めします。詳細については、「インスタンスタイプの変更」をご参照ください。 |
単一のプログラムまたはプロセスが短期間に大量のメモリを消費することがある。 | プログラムまたはプロセスに瞬間的なトラフィックが発生しているか、スケジュールされたタスクを実行している。 |
|