約 250 個の Docker コンテナを実行するサーバーがあります。すべてが起動して実行されると、htop は以下のように 32 ~ 33% の RAM 使用率を表示します。
より詳細な監視のために netdata もインストールしましたが、コンテナを再起動して起動した後、次のような結果になりました。
netdata を見ると、キャッシュ済みとしてマークされている RAM が約 20 GB ありますが、htop では表示されません。
コンテナを監視しているノード プロセスでヒープ領域が不足するというエラーがいくつか発生しました (測定値が短期間記録されない瞬間は、実際にネットデータ グラフで確認できます)。
このキャッシュ メモリとは何ですか。なぜ 20 GB も消費するのですか。ノード プロセスのヒープ スペースは 1 GB に制限されていると思います。
free -g は netdata が認識したものを確認します:
どのプロセスがそのメモリを使用しているかを知る方法はありますか?