キャッシュを消去しても、Linuxの空きメモリは常に消去されます。

キャッシュを消去しても、Linuxの空きメモリは常に消去されます。

私は100 TPS APIトラフィックを管理するLinuxサーバーを維持しています。最初はRAMが8GBしかありませんでした。私たちは最近、メモリを2倍に増やし、JVMのメモリ消費制限も2倍にしました。利用可能なメモリがまだ不足しています。

free -m
              total        used        free      shared  buff/cache   available
Mem:          15885        9909         156          15        5819        5584
Swap:         18431         127       18304

ご覧のとおり、使用可能なメモリは156MBです。キャッシュがクリアされるとfreeメモリが増えます。しかし、数時間経っても、まだ同じレベルに落ちた。これは通常の動作ですか、それともメモリを増やす必要がありますか?

ベストアンサー1

これは通常の動作です。未使用のメモリは、全体的なパフォーマンスを向上させるためにキャッシュに使用されます。他の目的でメモリが必要な場合、メモリは自動的に解放されます。この特定の動作を確認し、他人に表示する以外にキャッシュを削除する必要はありません。メモリに空き容量があると、ディスクI / Oアクティビティが増加し、アプリケーションが遅くなる可能性があります。

私も信じるJavaより多くの使用可能なメモリがある場合は、当然より多くのメモリを使用することになり、これを防ぐには多くのパラメータが必要です。

これにより、一部のモニタリングツールがメモリ使用量について警告する場合は、実際の使用可能なメモリに関する正しいレポートを提供するようにモニタリングツールを変更する必要があります。を示します)。

ちなみに、157MBのスワップスペースを使用することは、スワップインとスワップアウトをしない限り問題になりません。 (これは次のコマンドで確認できます。)vmstat)。これは、実際のアクティビティに157MBのメモリを使用できることを意味します。まだ見守るべき部分です。

おすすめ記事