問題 12★★☆

利用者の増加でWebシステムの応答が遅くなったため、スケールアウトによって 処理能力を高めることにした。行う内容として最も適切なものはどれか。

正解:エ

各選択肢の解説

  1. ア1台のサーバのCPUをより高速なものに交換し、あわせてメモリを増設する。

    誤り。これはスケールアップです。同じ1台の性能を引き上げる方法で、 台数を増やすスケールアウトとは増強の向きが逆になります。

  2. イ使っていない機能やサービスを停止し、1台あたりの処理の無駄を減らす。

    誤り。これは設定を見直す性能改善(チューニング)です。持っている能力を 使い切る工夫であって、処理能力そのものを増やしてはいません。

  3. ウ処理の実行を利用者の少ない夜間へずらし、集中する時間帯の負荷を下げる。

    誤り。これは運用による負荷の平準化です。構成は変えずに時間をずらす対処で、 同時に集まる利用者そのものには対応できません。

  4. エ同じ構成のサーバを増やして並べ、処理を複数台で分担できるようにする。

    正解。スケールアウトは台数を増やして処理を分担させる方法です。 利用者の増加に合わせて、必要な分だけ横に足していけます。

理解を深めるために

「横に増やす」か「上に伸ばす」か

レジが混んでいる店を思い浮かべます。レジ台を増やして行列を分けるのが スケールアウト、レジ係を熟練者に替えて1台の処理を速くするのが スケールアップです。どちらも処理能力を上げますが、増やす方向が違います。

用語 やること 向いている場面
スケールアウト サーバの台数を増やす 同時利用者が増え続ける処理
スケールアップ 1台の性能を上げる 分担しにくい処理、台数を増やせない構成

それぞれの限界

  • スケールアウトは処理を分けられることが前提です。分担のしくみが要る反面、 1台が止まっても残りで受け続けられるため、止まりにくさの面でも有利になります
  • スケールアップは構成を変えずに済んで手軽ですが、載せられる部品の上限が来ると それ以上伸ばせません。交換のあいだシステムを止める必要もあります

クラウドサービスで「必要なときだけ台数を増やす」使い方が広まったのは、 スケールアウトが機器の購入なしにできるようになったためです。

評価指標としての読み方

システム評価指標では、性能(応答時間や単位時間あたりの処理量)と、 止まりにくさ(RASISでいう信頼性や可用性)を分けて見ます。 スケールアウトは前者への手当てですが、台数の余裕がそのまま後者にも効く、 という二重の利点を持つ点が問われやすいところです。

前の問題へ次の問題へ