daislogの日記 このページをアンテナに追加 RSSフィード

2011-11-08

サーバ負荷を見極める指標

はじめに


サーバが高負荷となる原因には様々なものがありますが、そのような場合に、どこがボトルネックとなっているのか、負荷の原因を特定して素早く対応策を講じるのはシステム管理者にとって重要なスキルになります。

サーバ負荷と呼ばれるものは大きく以下の2つに分類され、

負荷状況を確認する指標としては、大きく以下の4点があります。

ここではサーバ負荷の特定の仕方と対策の仕方について、簡単に概要を記載します。

サーバの状態を確認するコマンドは様々にありますが、ここでは、topやfreeなどのコマンドの他に、Sysstatというシステムリソースの使用状況データを収集するパッケージに含まれるsarというコマンドを利用して確認する方法を記載します。sarは時間とともに値の推移を追える点と、オプションを利用することで様々な情報を確認できる点が便利だと思います。
なお、特定リソース使用状況を確認するためのコマンド(vmstat、iostatなど)もありますので、状況に応じて使い分けていただくと良いと思います。
Unix系OSや別のLinuxディストリビューションによって実行コマンドや出力結果等が異なります。

環境


検証した環境は以下の通りです。


OSCentOS5.7 32bit版(カーネル 2.6.18-274.17.1.el5)
CPU2コア(Intel(R) Core(TM)2 Duo CPU T7700 2.40GHz)
メモリ512M

Sysstatパッケージのバージョン


SysstatはCentOS標準のパッケージを利用します。

  • Sysstat バージョン 7.0.2

なお、ソースからインストールする場合は以下のSysstat本家ダウンロードページからダウンロードしてください。
http://sebastien.godard.pagesperso-orange.fr/download.html

サーバ負荷状況の確認手法とその対策方針


ロードアベレージの確認

サーバが重い状態、つまり高負荷な状態の場合、まずロードアベレージを確認します。ロードアベレージの確認には"uptime"や"top"、あるいは"sar"コマンドで"-q"オプションを利用します。
"uptime"と"top"に関してはいずれも見方は同じで"load average:"に続く3つの数値がロードアベレージを示し、左から1分間、5分間、15分間の平均値を示します。
"sar -q"は実行待ちプロセス数、実行中プロセス数まで表示してくれます。

実行例(uptime)
% uptime
02:05:39 up 8 days, 11:36, 5 user, load average: 4.48, 4.54, 3.24

実行例(top)
% top
top - 02:04:55 up 8 days, 11:35, 5 user, load average: 4.64, 4.58, 3.24

実行例(sar -q)
% sar -q 1 10
Linux 2.6.18-274.7.1.el5 (hostname) 2011年11月07日

21時16分24秒 runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
21時16分25秒 3 222 3.80 4.45 3.16
21時16分26秒 2 222 3.80 4.45 3.16
21時16分27秒 2 222 3.80 4.45 3.16
21時16分28秒 6 222 3.66 4.41 3.16
21時16分29秒 3 222 3.66 4.41 3.16
21時16分30秒 3 222 3.66 4.41 3.16
21時16分31秒 3 222 3.66 4.41 3.16
21時16分32秒 3 222 3.66 4.41 3.16
21時16分33秒 2 222 3.76 4.42 3.16
21時16分34秒 3 222 3.76 4.42 3.16
平均値: 3 222 3.72 4.42 3.16
各出力項目の意味は以下の通りです。
・runq-sz
ランキューに溜まっているプロセス数(実行待ちプロセス数)
・plist-sz
実行中プロセススレッド
・ldavg-1
ロードアベレージ(1分間の平均値)
・ldavg-5
ロードアベレージ(5分間の平均値)
・ldavg-15
ロードアベレージ(15分間の平均値)

ロードアベレージで表示される数値は、"処理を実行したいが、何らかの原因で実行できずに待ち状態となっているプロセス数(厳密には実行中のプロセス数+実行可能状態のプロセス数)の1分、5分、15分の平均値"になります。
この実行待ちプロセスの平均数が多いと、処理が遅延しているということになるため、ロードアベレージの値はサーバ負荷の判断基準となる数値になります。

ロードアベレージCPU数(コア数)より大きくなっている場合は"処理が追いついていない"、つまりサーバ負荷が高いということになります。
例えば、2コアのCPUロードアベレージが4となっている場合、2コアのCPUがそれぞれ1プロセスずつ処理を実行しており、残る2つのプロセスは実行待ち状態ということになります。
ただし、マルチタスクの場合、プログラムの作りにもよるため一概には言えません。(例えば4コアのマシン上でも、4つのタスク(A,B,C,D)に対して2CPUしか使わないようなプログラムを実行した場合、4CPUが全て空きの状態だったとしても、2CPU分のみが2つのタスク(A,B)で使用され、残る2つのタスク(C,D)は待ちの状態となるため、ロードアベレージは2となります。)

逆に、仮に1コアのCPUの使用率が常に100%の状態が1時間続いたとしても、その間のロードアベレージが常に1であったとすれば、サーバ負荷は0という事になります。これは1個のプロセスが常にCPUを占有している状態であり、そのプロセスCPUをフルで使いつづけたという理想的な状態になるためです。

実行待ちとなっている原因は以下の2つになります。

  • 他のプロセスの処理にCPUが使われているため、別のプロセスがその処理が終了するのを待っている状態(CPU負荷)
  • ディスクへの読み書き要求を発行して、その結果を待っている状態(I/O負荷)

ロードアベレージの値だけでは、CPU負荷なのか、I/O負荷なのか判別できませんので、ロードアベレージが高い場合は、次に、CPU負荷なのか、I/O負荷なのかの切り分けを行う必要があります。
なお、ロードアベレージが低い状態のにスループット(処理速度)が上がらない場合、ネットワーク面での問題(パケットロスなど)や実行中のアプリケーションの問題が疑われます。

CPU負荷とI/O負荷の確認

ロードアベレージの値を確認後、CPUI/O負荷の状況を確認していくことになります。

実行中のプロセスとそれに伴うCPUの使用率を確認するには"top"コマンドを利用します。
CPU使用率の詳細や時間推移を確認する場合には"sar"コマンドで"-u"オプションを、さらにCPUのコア数ごとの使用率を確認する場合には"-P"オプションを利用します。

実行例(top)
キーボードの「1」を押下すると下記のようにコア数ごとの使用率(ここではCpu0,Cpu1)が表示されます。
% top
top - 21:19:56 up 19 days, 22:55, 3 users, load average: 4.51, 4.37, 3.15
Tasks: 436 total, 16 running, 414 sleeping, 0 stopped, 6 zombie
Cpu0: 51.2%us, 31.1%sy, 0.0%ni, 1.0%id, 0.7%wa, 1.2%hi, 14.9%si, 0.0%st
Cpu1: 44.1%us, 24.6%sy, 0.0%ni, 24.6%id, 3.2%wa, 2.1%hi, 1.4%si, 0.0%st
Mem: 514912k total, 495328k used, 19584k free, 28152k buffers
Swap: 1048568k total, 19412k used, 1029156k free, 167012k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18284 test 17 0 21144 10m 1784 R 47.0 2.2 0:11.22 ab
17181 test 16 0 11244 2996 1492 R 12.9 0.6 2:51.51 pgbench
17187 postgres 15 0 51940 24m 23m S 1.7 4.9 0:08.48 postmaster
17410 apache 15 0 0 0 0 Z 1.7 0.0 0:00.10 httpd <defunct>
17602 apache 15 0 23776 4088 1056 S 1.7 0.8 0:00.09 httpd
17195 postgres 15 0 51940 24m 23m S 1.3 4.9 0:08.57 postmaster
17198 postgres 15 0 51944 24m 23m S 1.3 4.9 0:08.38 postmaster
17205 postgres 15 0 23776 4088 1056 S 1.3 0.8 0:00.06 httpd
17496 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17515 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.08 httpd
17586 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.08 httpd
17592 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17690 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.04 httpd
18298 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.06 httpd
18333 apache 15 0 0 0 0 Z 1.3 0.0 0:00.08 httpd <defunct>
18355 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17185 postgres 15 0 51940 24m 23m S 1.0 4.9 0:08.60 postmaster

実行例(sar -u)
% sar -u 1 10
Linux 2.6.18-274.7.1.el5 (hostname) 2011年11月07日

21時04分47秒 CPU %user %nice %system %iowait %steal %idle
21時04分48秒 all 47.92 0.00 26.56 2.08 0.00 23.44
21時04分49秒 all 49.19 0.00 27.57 2.70 0.00 20.54
21時04分50秒 all 48.69 0.00 26.70 5.24 0.00 19.37
21時04分51秒 all 47.42 0.00 27.84 2.58 0.00 22.16
21時04分52秒 all 46.49 0.00 23.78 5.41 0.00 24.32
21時04分53秒 all 48.40 0.00 24.47 3.72 0.00 23.40
21時04分54秒 all 46.77 0.00 26.88 4.30 0.00 22.04
21時04分55秒 all 47.34 0.00 28.72 2.66 0.00 21.28
21時04分56秒 all 48.44 0.00 27.60 3.12 0.00 20.83
21時04分57秒 all 46.67 0.00 25.64 2.56 0.00 25.13
平均値: all 47.73 0.00 26.58 3.43 0.00 22.26

実行例(sar -P)
% sar -P ALL 1 10
Linux 2.6.18-274.17.1.el5 (hostname) 2011年11月07日

21時03分53秒 CPU %user %nice %system %iowait %steal %idle
21時03分54秒 all 46.39 0.00 26.29 3.09 0.00 24.23
21時03分54秒 0 42.86 0.00 24.49 4.08 0.00 28.57
21時03分54秒 1 49.48 0.00 28.87 3.09 0.00 18.56

21時03分54秒 CPU %user %nice %system %iowait %steal %idle
21時03分55秒 all 43.33 0.00 27.78 3.89 0.00 25.00
21時03分55秒 0 42.22 0.00 26.67 4.44 0.00 26.67
21時03分55秒 1 43.33 0.00 30.00 2.22 0.00 24.44

21時03分55秒 CPU %user %nice %system %iowait %steal %idle
21時03分56秒 all 47.12 0.00 26.18 3.14 0.00 23.56
21時03分56秒 0 49.47 0.00 24.21 2.11 0.00 24.21
21時03分56秒 1 45.83 0.00 26.04 5.21 0.00 22.92

21時03分56秒 CPU %user %nice %system %iowait %steal %idle
21時03分57秒 all 48.96 0.00 23.96 5.21 0.00 21.88
21時03分57秒 0 46.46 0.00 25.25 8.08 0.00 20.20
21時03分57秒 1 51.09 0.00 25.00 1.09 0.00 22.83

21時03分57秒 CPU %user %nice %system %iowait %steal %idle
21時03分58秒 all 51.87 0.00 26.74 2.14 0.00 19.25
21時03分58秒 0 49.47 0.00 27.37 2.11 0.00 21.05
21時03分58秒 1 53.76 0.00 25.81 2.15 0.00 18.28

21時03分58秒 CPU %user %nice %system %iowait %steal %idle
21時03分59秒 all 43.96 0.00 26.37 5.49 0.00 24.18
21時03分59秒 0 44.57 0.00 26.09 6.52 0.00 22.83
21時03分59秒 1 44.32 0.00 26.14 4.55 0.00 25.00

21時03分59秒 CPU %user %nice %system %iowait %steal %idle
21時04分00秒 all 50.52 0.00 27.60 1.56 0.00 20.31
21時04分00秒 0 50.52 0.00 28.87 2.06 0.00 18.56
21時04分00秒 1 50.00 0.00 26.53 2.04 0.00 21.43

21時04分00秒 CPU %user %nice %system %iowait %steal %idle
21時04分01秒 all 46.60 0.00 25.13 5.24 0.00 23.04
21時04分01秒 0 48.94 0.00 25.53 6.38 0.00 19.15
21時04分01秒 1 44.79 0.00 23.96 4.17 0.00 27.08

21時04分01秒 CPU %user %nice %system %iowait %steal %idle
21時04分02秒 all 49.75 0.00 24.87 3.05 0.00 22.34
21時04分02秒 0 48.98 0.00 23.47 2.04 0.00 25.51
21時04分02秒 1 50.00 0.00 26.53 3.06 0.00 20.41

21時04分02秒 CPU %user %nice %system %iowait %steal %idle
21時04分03秒 all 48.21 0.00 27.69 2.05 0.00 22.05
21時04分03秒 0 47.96 0.00 24.49 3.06 0.00 24.49
21時04分03秒 1 48.98 0.00 30.61 2.04 0.00 18.37

平均値: CPU %user %nice %system %iowait %steal %idle
平均値: all 47.71 0.00 26.25 3.47 0.00 22.57
平均値: 0 47.18 0.00 25.63 4.08 0.00 23.12
平均値: 1 48.20 0.00 26.96 2.96 0.00 21.88
各出力項目の意味は以下の通りです。
・%user
ユーザプロセスによるCPUの使用率の割合
・%nice
実行優先度を変更した(nice値)ユーザプロセスによるCPUの使用率の割合
・%system
システムプロセスによるCPUの使用率の割合
・%iowait
I/O終了待ち時間の割合(I/O進行中でその終了を待っている時間)
・%steal
仮想サーバCPUを使って待たされていた時間の割合
・%idle
ディスクI/O待ち以外でCPUが何もしないで待っていた時間の割合

CPU負荷で着目するのは%user,%systemの値です。
CPUの%user値が高い場合:
ユーザプロセス(アプリケーションプロセス等)がCPUを使用している状態になり、基本的I/O等にボトルネックはありません。主な原因としては以下のようなものがあります。

CPUの%systemが高い場合:
カーネル空間の処理にCPUを消費している状態になります。原因としては主に以下のようなものが考えられます。

CPU負荷が高い場合、topコマンド等で確認できるCPU使用率の高い該当プロセスを暫定的に停止させる、恒久的にはその処理のアルゴリズムスケジューリング等を見直して、より効率的なロジックに変更するといった対応が必要になります。CPUを性能の良いものにするなども検討します。プロセスが暴走している場合は問題を見つけて改善する必要があります。

I/O負荷で着目すべきは%iowaitです。
%iowaitが高い場合:
一般的にCPU使用率とは%userと%systemの値を足した値を差し、%iowaitが高い状態であっても、CPUを必要とするプロセスが他にある場合には、そのプロセスCPUを使用することが可能です。
I/O負荷は、CPUアイドル状態(待機状態)で、OS上に未処理のディスク入出力(読み書き)要求があった時間の割合を意味します。
システムの応答が遅いなどの場合に、CPU使用率の%iowaitが%userや%systemに比べて高い状態である場合、CPUを使用する処理が大きくないのにディスクへの読み書き要求が発生していることになり、ディスクへのI/Oボトルネックになっている可能性があります。
これは、求められるI/O要求に対して、ディスクの処理速度が追いついていない状態になり、主には以下のような状態が考えられます。

  • アプリケーション自体がディスクにアクセスする速度が遅い
  • メモリが不足していてスワップ領域(つまりディスク)へのアクセスが頻発していて遅い

また、どれだけの読み書きが発生しているかは、"sar"コマンドの"-b"オプションで確認できます。
tps(rtps,wtps)が1秒間のディスクデバイスに対するIOリクエスト(読み書き)の回数を示しており、この値が高いとディスクアクセスが頻発していることを示します。

実行例(sar -b)

% sar -b 1 10
Linux 2.6.18-274.7.1.el5 (hostname) 2011年11月07日

21時06分06秒 tps rtps wtps bread/s bwrtn/s
21時06分07秒 1894.74 0.00 1894.74 0.00 23511.58
21時06分08秒 2136.73 0.00 2136.73 0.00 26465.31
21時06分09秒 1876.60 0.00 1876.60 0.00 23302.13
21時06分10秒 2244.44 0.00 2244.44 0.00 28266.67
21時06分11秒 2058.51 0.00 2058.51 0.00 25421.28
21時06分12秒 1854.95 0.00 1854.95 0.00 22980.22
21時06分13秒 2062.37 0.00 2062.37 0.00 25496.77
21時06分14秒 2059.79 0.00 2059.79 0.00 25517.53
21時06分15秒 2205.49 0.00 2205.49 0.00 27419.78
21時06分16秒 2185.26 0.00 2185.26 0.00 27132.63
平均値: 2057.57 0.00 2057.57 0.00 25545.42
表示される項目は下記の通りです。
tps
物理デバイスへの1秒間のI/Oリクエストの転送量
・rtps
物理デバイスへの1秒間の読み込みリクエストの転送量
・wtps
物理デバイスへの1秒間の書き込みリクエストの転送量
・bread/s
1秒間に読み出されたデータ量(ブロック単位)
・bwrtn/s
1秒間に書き込まれたデータ量(ブロック単位)

CPUの%iowaitが高い場合、まずメモリ、スワップの状態を確認します。メモリに問題がない場合、該当のプログラム修正してディスクへのアクセスを減少させることも必要ですが、ディスクの増設・RAID構成の見直しを行い、ディスクへのI/O分散させて処理の向上を図ったり、最近ではSSDなど高速なディスクを利用するといったHWレベルでの改善も有効になります。

メモリ使用率の確認

プロセスのメモリ使用量を見るには上述の"free"のほかに"sar"コマンドで"-r"オプションを利用します。スワップの状態を確認するには"sar"コマンドの"-W"オプションを、各プロセスのメモリ使用状況を確認するには"top"コマンドを利用します。
各コマンドの実行例が以下になります。

実行例(free)
% free
total used free shared buffers cached
Mem: 514912 504396 10516 0 249672 167500
/+ buffers/cache: 87224 427688
Swap: 1048568 120 1048448

実行例(sar -r)
時間推移と共にメモリがどの程度使用されているか把握できます。
% sar -r 1 10
Linux 2.6.18-274.7.1.el5 (hostname) 2011年11月07日

21時44分19秒 kbmemfree kbmemused %memused kbbuffers kbcached kbswpfree kbswpused %swpused kbswpcad
21時44分20秒 246944 267968 52.04 49304 177888 1021128 27440 2.62 11008
21時44分21秒 246944 267968 52.04 49304 177888 1021128 27440 2.62 11008
21時44分22秒 246944 267968 52.04 49304 177888 1021128 27440 2.62 11008
21時44分23秒 246944 267968 52.04 49304 177888 1021128 27440 2.62 11008
21時44分24秒 246944 267968 52.04 49308 177884 1021128 27440 2.62 11008
21時44分25秒 246944 267968 52.04 49308 177888 1021128 27440 2.62 11008
21時44分26秒 246944 267968 52.04 49308 177888 1021128 27440 2.62 11008
21時44分27秒 246944 267968 52.04 49308 177888 1021128 27440 2.62 11008
21時44分28秒 246944 267968 52.04 49308 177888 1021128 27440 2.62 11008
21時44分29秒 246944 267968 52.04 49308 177888 1021128 27440 2.62 11008
平均値: 246944 267968 52.04 49306 177888 1021128 27440 2.62 11008
各出力項目の意味は以下の通りです。
・kbmemfree
物理メモリの空き容量
・kbmemused
使用中のメモリの容量
・%memused
物理メモリ使用率
・kbbuffers
バッファとして使用されている物理メモリの使用率
・kbcached
キャッシュとして使用されている物理メモリの使用率
・kbswpfree
スワップ領域の空き容量
・kbswpused
使用中のスワップ領域の容量
・%swpused
スワップ使用率
・kbswpcad
キャッシュされたswap領域の容量

実行例(sar -W)
スワップの発生状況を確認できます。スワップが多発すると、その分ディスクへのアクセスが発生するため、サーバスループットが低下します。
上述の"sar -r"と組み合わせることでスワップが発生した時間帯に、どの程度メモリが使用されていたか確認できます。
% sar -W 1 10
Linux 2.6.18-274.7.1.el5 (hostname) 2011年11月07日

23時30分00秒 pswpin/s pswpout/s
23時30分01秒 0.00 0.00
23時30分02秒 64.79 0.00
23時30分03秒 0.00 4613.51
23時30分04秒 8.42 5708.42
23時30分05秒 0.00 4497.80
23時30分06秒 0.00 4522.73
23時30分07秒 0.00 3886.32
23時30分08秒 0.00 5215.00
23時30分09秒 55.17 5801.15
23時30分10秒 0.00 3634.83
平均値: 34.17 4491.55
出力結果の各項目の意味は下記になります。
・pswpin/s
HDDからメモリに転送される 1 秒当たりのページ(仮想アドレス空間)数。
・pswpout/s
メモリからHDDへ転送される 1 秒当たりのページ(仮想アドレス空間)数。この値が高いとメモリ増設を検討する必要があります。

実行例(top)
%memとなっているところがプロセスの物理メモリ使用率です。
オプションによってメモリ使用量やCPU使用率等でソートすることも可能ですので、場合によって使い分けると良いと思います。
$ top
top - 21:19:56 up 19 days, 22:55, 4 users, load average: 5.39, 4.41, 2.53
Tasks: 436 total, 16 running, 414 sleeping, 0 stopped, 6 zombie
Cpu(s): 51.2%us, 31.1%sy, 0.0%ni, 1.0%id, 0.7%wa, 1.2%hi, 14.9%si, 0.0%st
Mem: 514912k total, 495328k used, 19584k free, 28152k buffers
Swap: 1048568k total, 19412k used, 1029156k free, 167012k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18284 test 17 0 21144 10m 1784 R 47.0 2.2 0:11.22 ab
17181 test 16 0 11244 2996 1492 R 12.9 0.6 2:51.51 pgbench
17187 postgres 15 0 51940 24m 23m S 1.7 4.9 0:08.48 postmaster
17410 apache 15 0 0 0 0 Z 1.7 0.0 0:00.10 httpd <defunct>
17602 apache 15 0 23776 4088 1056 S 1.7 0.8 0:00.09 httpd
17195 postgres 15 0 51940 24m 23m S 1.3 4.9 0:08.57 postmaster
17198 postgres 15 0 51944 24m 23m S 1.3 4.9 0:08.38 postmaster
17205 postgres 15 0 23776 4088 1056 S 1.3 0.8 0:00.06 httpd
17496 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17515 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.08 httpd
17586 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.08 httpd
17592 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17690 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.04 httpd
18298 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.06 httpd
18333 apache 15 0 0 0 0 Z 1.3 0.0 0:00.08 httpd <defunct>
18355 apache 15 0 23776 4088 1056 S 1.3 0.8 0:00.05 httpd
17185 postgres 15 0 51940 24m 23m S 1.0 4.9 0:08.60 postmaster

プロセスのメモリ使用量が増えてくると、キャッシュにメモリが使えなくなるため、ディスクI/Oが増加します。ディスクへの読み書きはメモリへの読み書きよりはるかに遅いため、ディスクI/Oが増えると、I/Owaitとなるプロセスが増え、処理のボトルネックとなります。
Linuxの場合、メモリをできるだけ有効に活用しようとするため、空きメモリをキャッシュとして使用します。"free"で確認できるメモリの使用量(used)の値やsarで確認できる使用量(kbmemused)は、キャッシュされているものも含めた値となるため大きいものになりますので、実際にプロセスがどの程度メモリを使用しているかは、キャッシュバッファに利用されているメモリ容量を差し引いた値で判断する必要があります。
メモリ使用率が多く、スワップが多発している原因は以下になります。

  • メモリを大量に使用する処理があるが、搭載しているメモリが不足している

利用可能なメモリ量が不足してくると、メモリへ保存されている古いプロセスやデータはディスク上のスワップと呼ばれる領域に保存されます。つまり、スワップが多発するということは、その分ディスクへのアクセスが発生することになるため、サーバスループットが低下します。
これを改善するには、暫定的には対象プロセスをkillする、恒久的にはプログラムのメモリの使用率を改善する、メモリ増設する、といった対策を講じることになります。

以上がサーバの負荷状況、及びその原因を追及するための大まかな手順になります。実際のシステムは複数のサーバネットワーク機器などが存在することが多いので、上記のような手順そのままに調査を進めることは難しいかもしれませんが、システム管理者の皆様の何らかの助けになればと思います。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/daislog/20111108/1320774441