平成22年春期試験午後問題 問4

問4 システムアーキテクチャ

⇱問題PDF
インターネットを介した情報提供システムに関する次の記述を読んで,設問1~4に答えよ。
 Z社は,利用者が希望する映画のタイトル,あらすじ,上映館,上映期間などの映画情報を表示する情報提供サービスを行っており,平均待ち時間の目標値を40ミリ秒以下としている。このサービスに使用する情報提供システムの現在のシステム構成を図1に示す。
pm04_1.png
 Webサーバとデータベースサーバ(以下,DBサーバという)を一体のシステムとして,現在のシステムの状況を調査したところ,1分当たりのアクセス数は平均600件,1アクセス当たりの平均処理時間 Tp は40ミリ秒であった。また,アクセス頻度はおおむねa分布に,処理時間はおおむねb分布に従っていたので,M/M/1の待ち行列モデルによって評価することにした。

〔システム構成の見直し〕
 アクセス数が順調に増加しているので,現在のシステム構成のままでは,将来,平均待ち時間がZ社の目標値を超えてしまう可能性のあることが分かった。そこで,この問題に対処するために,情報提供システムのシステム構成を見直して,図2に示すように,負荷分散装置を介して現行Webサーバと同等の処理能力を有するWebサーバ3台に負荷分散するシステム構成を検討することにした。
 見直し後のシステムの負荷分散装置では,次の(ⅰ)~(ⅴ)の負荷分散方式のいずれかを選択することができる。
pm04_2.png
  1. ラウンドロビン方式:あらかじめ決めた順序で各Webサーバにアクセスを振り分ける。
  2. 加重ラウンドロビン方式:Webサーバの処理能力に応じて,アクセスを振り分ける。
  3. 最少クライアント数方式:接続中のクライアント数が最も少ないWebサーバにアクセスを振り分ける。
  4. 最小データ通信量方式:データ通信量が最も少ないWebサーバにアクセスを振り分ける。
  5. 最小負荷方式:CPU使用率が最も低いWebサーバにアクセスを振り分ける。
 Z社では,負荷分散方式としては,設定の容易なラウンドロビン方式を採用することにした。
 しかし,図2の見直し後のシステム構成においても,①アクセス数が一定数を超過すると,Webサーバが高負荷状態となり,待ち時間が長くなるなどの事象が発生することから,更なる対処が必要と考えた。

〔新サービスの追加〕
 Z社では,〔システム構成の見直し〕後に,利便性を向上するため,今までのサービスに加えて,Webサーバにかかる負荷が大きい新サービスも提供することになった。この新サービスの提供では,WebサーバがDBサーバから取得してPCへ送信する,1アクセス当たりのデータ量が増加するので,WebサーバでのCPU処理時間も増加する。そこで,見直し後のシステムで採用していたラウンドロビン方式について再評価したところ,②複数の利用者がほぼ同時にアクセスしているとき,同じサービスを要求した利用者同士でも応答時間に大きなばらつきが生じ,平均待ち時間が目標値を超える場合があることが判明したので③負荷分散方式の設定を変更することにした。
 なお,DBサーバについては,性能的に十分な余裕があり,システム全体の性能に影響を与えることはないことが分かっている。

設問1

現在のZ社の情報提供システムについて,本文中のabに入れる適切な字句を答えよ。

解答例・解答の要点

a:ポアソン
b:指数

解説

aについて〕
アクセス頻度は、1, 2, 3などで連続していない(とり得る値が整数のみで、1と2の中間値はない)ため、離散型確率分布である「ポアソン分布」に従います。

bについて〕
処理時間は、連続型分布であるため、連続型確率分布である「指数分布」に従います。

M/M/1の待ち行列モデルでは、平均到着時間がポアソン分布、平均サービス時間が指数分布に従うことを条件にしています。

設問2

現在のZ社の情報提供システムについて,(1)~(4)に答えよ。ただし,(1)は,整数で答えよ。(2)~(4)は,小数第2位を四捨五入して小数第1位まで求めよ。
  • 平均到着時間間隔Tr(ミリ秒)を求めよ。
  • 利用率ρを求めよ。
  • 平均待ち時間Tw(ミリ秒)を求めよ。
  • 平均応答時間Ts(ミリ秒)を求めよ。

解答例・解答の要点

  • 100
  • 0.4
  • 26.7
  • 66.7

解説

  • 平均到着時間間隔 Tr は、1回ごとのアクセスが到着する時間間隔です。1分(=60,000ミリ秒)当たり平均600回のアクセスがあるので、
     Tr=60,000[ミリ秒]÷600[回]=100[ミリ秒]
  • 利用率ρは、1件当たりの平均処理時間÷平均到着時間間隔で求めることができます。
     ρ=40[ミリ秒]÷100[ミリ秒]=0.4
  • 平均待ち時間 Tw は、待ち行列に並んでからサービス(処理)が開始されるまでに待つ時間です。
    平均待ち時間を求める公式「{利用率/(1-利用率)}×平均処理時間」に当てはめると、
     Tw={0.4/(1-0.4)}×40[ミリ秒]
    =(0.4/0.6)×40
    =2/3×40=26.666…
    (小数点第2位を四捨五入)26.7[ミリ秒]
  • 平均応答時間 Ts は、待ち行列に並んでからサービス(処理)が終了するまでに待つ時間です。
    使う公式は「{利用率/(1-利用率)}×平均処理時間+平均処理時間」です。これは、(3)で求めた平均待ち時間 Tw に平均処理時間40ミリ秒を加えた時間になります。
     Ts=26.7[ミリ秒]+40[ミリ秒]=66.7[ミリ秒]

設問3

〔システム構成の見直し〕の下線①の対処として,次の(1),(2)のそれぞれに該当する具体的方策を解答群の中からすべて選び,記号で答えよ。
  • 情報提供システムへのアクセスをすべて受け付ける対処
  • 情報提供システムへのアクセスのうち同時に受け付ける数を制限する対処
解答群
  • Webサーバの故障を検出し,故障していないWebサーバへ振り分ける。
  • Webサーバの通信用バッファを大きくする。
  • 現行Webサーバと同等の処理能力をもつWebサーバを増設する。
  • 現行Webサーバより高い処理能力をもつWebサーバに取り替える。
  • "混雑しているので後ほどアクセスしてください"と表示する装置を設置する。

解答例・解答の要点

  • ウ,エ

解説

  • 下線①中の、"Webサーバが高負荷状態になり…"という部分から、現状のシステムではWebサーバの処理能力が不足していることが考えられます。すべてのアクセスを受け付けるためには、Webサーバの処理能力を向上させる必要があります。このため適切な方策は「ウ」と「エ」になります。
    • "アクセス数が一定数を超過すると"発生する事象であることから、故障によるWebサーバの負担増ではないと考えられます。
    • "Webサーバが高負荷状態になり"という記述から、ボトルネックになっているのは、ネットワークの転送速度ではありません。
  • 暫定的ではありますが、メッセージの表示でアクセスの遅延を促すことで、混雑時のアクセス数を緩和させる効果が期待できます。

設問4

〔新サービスの追加〕について,(1),(2)に答えよ。
  • 本文中の下線②について,なぜこのような問題が発生するのか。その原因について,50字以内で述べよ。
  • 本文中の下線③について,どの負荷分散方式を設定することが適切か。本文中の負荷分散方式から二つ選び,(ⅰ)~(ⅴ)の番号で答えよ。
    (※1~5の数字入力でもOKです)

解答例・解答の要点

  • 特定のWebサーバに新サービスの処理が集中した場合に,待ち時間が長くなることがある (41文字)
  • (ⅳ)
    (ⅴ)

解説

  • 新サービスの追加によって、このシステムでは処理時間・通信量の異なる旧・新サービスが混在することになります。
    現状のラウンドロビン方式では、Webサーバの状態などを考慮せずに三台のWebサーバに順番に処理を振り分けていきます。そのため特定のWebサーバに新サービスの処理が集中する可能性があり、同じ時に同じサービスを要求しても処理を割りふられたWebサーバの混雑状況によって、応答時間が異なるという問題が発生します。
  • 負荷分散方式を選択する基準は、同時にアクセスした同じサービスの応答時間をなるべく近い値にできる方式であることです。
    1. 従来のままの方式なので問題解決にはなりません。
    2. 従来のサービスと新サービスの処理量の違いを考慮していないため、ラウンドロビン方式と同じ問題が発生します。
    3. 多少の改善が見込めますが、従来のサービスと新サービスの処理量の違いを考慮していないため根本的な解決にはなりません。接続されたクライアント数が最小でも、新サービスのアクセスが密集し高負荷状態になっていることもあります。
    4. 正しい。データ通信量が多いということは、CPUに処理されるデータ量が多いということです。これを基準にアクセスを振り分けることで、3台のWebサーバに処理させるデータ量を均一化でき、結果Webサーバへの負荷を同程度にすることで応答時間の均一化を期待できます。
    5. 正しい。CPU負荷を基準にアクセスを振り分けることで、3台のWebサーバの負荷を均一化することができ、応答時間が同程度になることが期待できます。
∴(ⅳ),(ⅴ)
模範解答

Pagetop