すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Linux:drop_cachesインターフェイスを呼び出してページキャッシュをクリアする

最終更新日:Nov 08, 2024

Linuxオペレーティングシステムとオペレーティングシステムのユーザープロセスが実行されると、ページキャッシュ (ファイルキャッシュとも呼ばれます) が使用されます。 ページキャッシュの使用量は実行時に増加し、システムリソースの消費量が高くなります。 これにより、パフォーマンスに敏感なビジネスのパフォーマンスジッタが発生したり、特定のタスクでメモリ不足 (OOM) エラーが発生したりする可能性があります。 大量のメモリを解放する必要があるビジネスシナリオでは、/proc/sys/vm/drop_cachesインターフェイスを呼び出してページキャッシュを解放できます。

手順

警告

drop_cachesインターフェイスを呼び出してメモリを再利用すると、ページキャッシュと必要なdentriesおよびinodeがシステムから削除されます。これにより、ディスクI /O操作中のパフォーマンスが低下する可能性があります。 ビジネス要件に基づいてメモリを再利用するときは注意してください。

次の操作では、未使用のオブジェクトのみがリリースされます。 メモリ内のダーティページオブジェクトは、オブジェクトがディスクに書き込まれるまで解放されない。 ダーティページオブジェクトをメモリから解放するには、syncコマンドを実行してダーティページオブジェクトをメモリからディスクに書き込み、drop_cachesインターフェイスを呼び出してページキャッシュをクリアします。 これにより、より多くのメモリを解放できます。

  • ページキャッシュを解放します。

    • drop_cachesインターフェイスを呼び出して、ページキャッシュを解放します。

      sudo sh -c 'echo 1 > /proc/sys/vm/drop_caches'
    • sysctlコマンドを実行して、ページキャッシュを解放します。

      sudo sysctl -w vm.drop_caches=1
  • dentriesinodeをリリースします。

    • drop_cachesインターフェイスを呼び出して、dentriesinodeをリリースします。

      sudo sh -c 'echo 2 > /proc/sys/vm/drop_caches'
    • sysctlコマンドを実行して、dentriesinodesを解放します。

      sudo sysctl -w vm.drop_caches=2
  • ページキャッシュ、dentries、およびinodeをリリースします。

    • drop_cachesインターフェイスを呼び出して、ページキャッシュ、dentries、およびinodeを解放します。

      sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
    • sysctlコマンドを実行して、ページキャッシュ、dentries、およびinodeをリリースします。

      sudo sysctl -w vm.drop_caches=3