プロクラ(クラウドAIロボット、詳しい役)SabaKore

よくある質問

メモリを何が使っているのかを調べる

2026年8月20日

この記事はAIが下書きを作成しています。内容に誤りに気づいた場合はお問い合わせよりお知らせください。

レン(新米インフラエンジニア)・悩む

レン

free を見たら空きがほとんど無い!メモリ不足ってこと?
プロクラ(クラウドAIロボット、詳しい役)・OK

プロクラ

そう決めるのは早いよ。Linuxは、空いているメモリをディスクの読み込み結果の保管に使う。だから「空きが少ない」こと自体は、むしろ正常な状態なんだ。

free のどこを見るか

  • free ではなく available(利用可能)の列を見る
  • available は「必要になれば使える量」を示す
  • buff/cache は、必要になれば解放される。使用中とは違う
  • swap が常時使われていれば、そちらが本当の不足の合図
プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

判断の基準は2つだけ。availableが十分にあるか、swapが常時使われていないか。この2つで足りるよ。

プロセスごとに調べる

プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

実際に何が使っているかを見るなら、プロセスごとの一覧を使用量の多い順に並べるのが早い。topを開いて、メモリ順に並べ替えるだけでも分かるよ。
  • top で、メモリ使用量の多い順に並べ替える
  • ps で使用量の列を出し、大きい順に並べる
  • 同じ名前のプロセスが多数並んでいたら、その合計を見る
  • 1つが大きいのか、小さいものが大量にあるのかで対処が変わる
プロクラ(クラウドAIロボット、詳しい役)・困った

プロクラ

後半が大事だよ。PHPやWebサーバーの子プロセスは、1つずつは小さくても数が多い。同時処理数の設定を下げるだけで、合計が大きく減ることがある。

数字を足しても合わない理由

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

プロセスごとの使用量を全部足すと、実際の搭載量を超えることがある。これは間違いではなくて、複数のプロセスが同じメモリを共有しているからなんだ。
  • 共有ライブラリなど、複数のプロセスで共通の部分がある
  • その分が、各プロセスの使用量に重複して数えられている
  • だから単純な合計は、実態より大きくなる
  • 傾向を掴む目的なら、それでも十分役に立つ

増え続けている場合

プロクラ(クラウドAIロボット、詳しい役)・分析中

プロクラ

時間とともに使用量が増え続けるなら、解放されずに溜まっている可能性がある。再起動すると戻る、というのがその特徴だよ。
  • 起動直後と、しばらく経ってからの使用量を比べる
  • 特定のプロセスだけが増えているかを見る
  • アプリやプラグインの更新で直ることがある
  • 定期的に再起動する運用は、応急処置であって解決ではない
レン(新米インフラエンジニア)・できた

レン

空きじゃなくてavailableとswapを見る。それだけで判断できるんだ。

設定値を容量に合わせる

プロクラ(クラウドAIロボット、詳しい役)・教える

プロクラ

調べた結果、特定のソフトが大きく使っていたなら、その設定を見直す価値がある。既定値は、もっと大きなサーバーを想定していることが多いからね。
  • データベースのキャッシュ関連の設定値
  • PHPやWebサーバーの同時処理数
  • 1プロセスあたりの使用量 × 同時処理数 が、収まるかを計算する
  • 下げると処理できる数は減るが、落ちるよりはよい
プロクラ(クラウドAIロボット、詳しい役)・OK

プロクラ

小さいプランでは、この見直しだけで安定することがよくあるよ。プランを上げる前に、一度計算してみる価値はある。

あわせて読みたい

→ コラム記事をすべて見る(カテゴリ・事業者で絞り込めます)

サーバーを触る前に押さえておきたいこと

姉妹サイトの、この記事と相性のいいページです。