skillup

技術ブログ

サーバー・ネットワーク

負荷調査のセオリー

投稿日:2017年2月14日 更新日:

以前にも下記リンクで負荷調査について記事を書いたんですが、もう少し掘り下げてみようかと。
サーバーの過負荷の発見 理論編
サーバーの過負荷の発見 メモリ使用率の調査&抽出、置換(awk,sed)コマンドについて
システム監視の基礎

全体の流れ

  1. ロードアベレージ調査
  2. ロードアベレージ低→ネットワーク系の可能性高い(コマンド調査)
  3. ロードアベレージ高→CPU,メモリ,I/Oの可能性高い(コマンド調査)

参考リンク

Linuxサーバの負荷や使用率を調査するコマンドと手順

システムの負荷の原因を切り分ける方法

Linuxサーバの反応が遅い(重い)場合の原因の調査手順

標準的なツールによるサーバーの負荷調査チャート

コマンドによる「負荷」の原因切り分け

原因調査用Linuxコマンド

Linuxリソース確認系コマンドの使いドコロ

シス管系女子

ロードアベレージ

辞書的な定義は1CPUにおける単位時間あたりの実行待ちとディスクI/O待ちのプロセスの数。CPUの実行権限が与えられるのを待っているプロセス」「ディスクI/Oの完了を待っているプロセス」の多さのこと

load averageを見てシステムの負荷を確認する

簡単に言うとこれが大きいほど仕事が混んでる状態。(目安として1以下であれば軽く、1~3は中くらい、それ以上だと重い。ただしコア数との兼ね合いが大きい。)

uptimeで直近1分、5分、15分をみることができる他、topでみることもできる

CPU使用率

ロードアベレージが高い場合、CPU使用率が高い可能性があります。t

  1. topをCPU利用率でソート
  2. 利用率の高いものをpsコマンドで状態を確認
  3. そのあと、straceやoprofileなどでさらに詳しい調査をすることが可能

メモリ使用率、ディスクI/O

CPU使用率が高くなく、Idle(待機まち)の率が高い場合、メモリ使用量、ディスクI/Oを疑う。

IT用語辞典 e-words スワップ 【 swap 】

  1. topコマンドでMemとSwap使用率をみて、Swap使用率が相対的に高い場合、スワップを疑う。
  2. topでメモリ使用率でソート
  3. 利用率の高いものをpsでコマンド状態で確認
  4. スワップが発生している場合プログラムで改善し、無理なものはメモリの増設で対応する
  5. スワップが発生していない場合はキャッシュに必要なメモリが不足。データの分散やキャッシュサーバーの導入を検討

スワップ・・メモリが不足した場合、現在使用されていないプロセスを一時的にハードディスクに書き込む機能の1つ。ハードディスクに書き込むことをスワップアウト、メモリにデータを戻すことをスワップインとよび、一般的にこの使用率が高い場合、メモリ不足が疑われる。

ネットワーク関連

ロードアベレージが低いのに、ネットワークに問題があり、遅いことも考えられる。netstatなどでTCPコネクション数を調べる

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

set,ifディレクティブ,変数に関して

これまで基本的なnginxの設定についてみてきましたが、今回はset,ifディレクティブについてみていきます。 Contents1 変数とset2 error_page3 名前付きlocation 変 …

no image

scpコマンドを使ったサーバー間のファイルのやり取り

あるサーバーのファイルを別サーバーにコピーするとき、大昔はFTPを使っていましたが、現在FTPサーバー自体を立てることがあまりないため、SSHを使ったSCPコマンドでのファイル点を使いました。 Con …

no image

Addtypeについて

htmlにはPHPを埋め込むことができますが、拡張子がhtmlの場合、そのままでは実行できません。 この場合、通常では拡張子を変えなければいけないところですが、apacheを使っている場合、設定ファイ …

no image

SAM(AWSのサーバーレスフレームワーク)について

LambdaやAPIGatewayをちょこちょこいじってますが、goなどを使っているとローカルでの開発時にはAPIなどと直接連携したりすることはできません。 またデプロイ自体が面倒で画面からポチポチや …

no image

herokuネタ(頻出コマンドなど)

10月末ぐらいから使っているPaasのherokuについてよく使うコマンドについて Contents1 アカウント開設&スタート2 基本的な使い方 アカウント開設&スタート http://skill- …

アーカイブ