• 検索結果がありません。

サーバ資源と応答時間

ドキュメント内 パラメータ自動設定に関する研究 (ページ 40-45)

第 4 章 最大クライアント数の自動設定 23

4.2 最大クライアント数の分析

4.2.3 サーバ資源と応答時間

サーバのどのリソースがボトルネックとなっても多くの場合,応答時間のばらつ きが発生し,標準偏差に影響を与える.これを確認するため,簡単な実験を行った.

1台のPCを使用し,そのPC上でボトルネックを意図的に発生させるような単 純なプログラムを実行し,スループットと応答時間を測定した.この実験では,(a) CPU がボトルネックとなる場合,(b) メモリがボトルネックとなる場合,(c) ディ スクがボトルネックとなる場合の3つで実験を行っている.CPUがボトルネック となる場合には,フィボナッチ数を計算するプロセスを生成し,プロセス数を変 化させながら,その影響を見る.メモリがボトルネックとなる場合には,それぞ れのプロセスがページサイズである4KBごとに決められた定数を書き込む.ディ スクがボトルネックとなる場合には,ファイルをランダムに選択し,ファイルの 内容を読み込む.OSのキャッシュ上からデータを取得しないように,多数のファ イルを用意する.プロセスを多数生成することによるCPUやメモリへの影響を避 けるため,単一プロセスで非同期I/Oを利用してディスクにアクセスするように した.実験に使用したPCは,2章のサーバで使用したものと同一のものを使用し ている.

実験結果を図4.3,4.4,4.5に示す.それぞれの場合について,スループットと 応答時間を示している.応答時間では,平均値と標準偏差をプロットしている.

図 4.3から,どの場合にもPCが過負荷となると応答時間の標準偏差が大きく なっていることがわかる.CPUがボトルネックとなる場合には,100プロセスあ たりから応答時間の平均が増加するとともに,応答時間の標準偏差も増加する.メ モリがボトルネックとなる場合も,100プロセスあたりから応答時間の標準偏差が 大幅に増加している.ディスクがボトルネックとなる場合には,スループットが 低下を始める100同時リクエストあたりから,応答時間の標準偏差が大きくなっ ている.

0 50 100 150 200 250 300

1 10 100 1000

スループット [要求/s]

同時要求プロセス数

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

1 10 100 1000

応答時間 [ms]

同時要求プロセス数 平均

標準偏差

図 4.3: サーバ資源と応答時間(CPU)

0 20 40 60 80 100 120 140 160 180 200

1 10 100 1000

スループット [1000要求/s]

同時要求プロセス数

0 100 200 300 400 500 600

1 10 100 1000

応答時間 [ms]

同時要求プロセス数 平均

標準偏差

図 4.4: サーバ資源と応答時間(メモリ)

0 2000 4000 6000 8000 10000 12000 14000 16000 18000

1 10 100 1000

スループット [要求/s]

同時リクエスト数

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000

1 10 100 1000

応答時間 [ms]

同時リクエスト数 標準偏差平均

図 4.5: サーバ資源と応答時間(ディスク)

経過時間

標準偏差

180秒 prev

(前回設定完了時点の 推定標準偏差)

sd_reg

(現在の推定標準偏差)

現在時刻 前回設定完了時刻

本機構は回帰直線から推定標準偏差を計算する.

回帰直線は時間経過とともに移動する.

推定標準偏差が許容範囲を超えると 最大クライアント数の設定を開始する.

回帰直線 許容範囲

(prev +/- threshold)

図 4.6: ワークロードの変化の検出

ドキュメント内 パラメータ自動設定に関する研究 (ページ 40-45)