SAシステムアーキテクト試験 午前Ⅱ

令和6年度春期 システムアーキテクト 午前Ⅱ 問3

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

マイクロサービスアーキテクチャを採用してアプリケーションソフトウェアを設計している。障害発生による影響の範囲を局所化してシステム全体への波及を抑えるために,マイクロサービスへリクエストを送ったときのエラーが,あらかじめ設定している回数を超えた場合に,障害が解消するまでは,リクエストを送らない方式とする。この方式を何と呼ぶか。

選択肢

  1. ア
    CORS
  2. イ
    RPC
  3. ウ
    サーキットブレーカー
  4. エ
    サービスディスカバリー
解き方のヒントを見る

対策を検討する範囲をそろえる

障害への対策を考えるときは、まず検討の範囲をそろえましょう。与えられた情報のうち、どこまでを対象としているかに注目し、範囲が明示されている部分と、自分が補っている部分を分けて整理します。

この問題で問われていること

考える際は、与えられた条件が及ぶ範囲を意識しましょう。ある範囲についての記述を、根拠なく別の範囲へ広げていないかを点検し、判断の対象を途中で変えずに情報を整理することが手掛かりになります。

視点

検討範囲とは、今回の条件に基づいて考える対象の広がりです。読み取れる範囲を短い言葉で整理すると、自分の想定が紛れ込んでいないか確かめやすくなります。

確認ポイント

  • 検討の対象となる範囲を整理したか
  • 範囲の根拠を与えられた情報に求めているか
  • 途中で対象の範囲を広げたり狭めたりしていないか
正解と解説を見る

正解

ウ

解説

正解はウのサーキットブレーカーです。エラー回数が設定値を超えたときに障害のあるサービスへのリクエストを停止し、障害の影響がシステム全体へ波及することを抑える。

理由

サーキットブレーカーは、呼出し先へのリクエストの失敗が所定のしきい値を超えた場合に、呼出しを遮断する方式です。設問では、エラー回数が設定値を超えると障害が解消するまでリクエストを送らないとしており、この方式に該当する。障害のあるサービスへの呼出しを続けることで生じる待ち時間や資源消費の増大を抑え、呼出し元への影響を軽減する。

比較

CQRSは更新と参照の責務を分離する設計方式、RPCは遠隔の手続を呼び出す仕組み、サービスディスカバリーはサービスの所在や接続先を発見する仕組みです。いずれも、設問のエラー回数に基づく呼出し遮断を表す名称ではありません。添付画像の選択肢アはCQRSなので、入力の選択肢本文CORSをCQRSに訂正した。

選択肢ア

これは不正解だよ。CQRSは、データを更新するコマンドと、データを参照するクエリの責務を分離する設計方式である。設問のようにエラー回数を基準にリクエストを止める方式ではない。添付画像の選択肢アはCQRSであり、入力本文のCORSは誤記である。

選択肢イ

これは不正解だよ。RPCは、別のプロセスや遠隔のコンピュータにある手続を呼び出す仕組みである。サービス間の呼出しに利用できるが、それ自体は障害時のリクエスト停止を定める方式ではない。設問では、呼出し方法ではなく、エラー回数が設定値を超えた後の障害対策を問うている。

選択肢ウ(正解)

これは正解だよ。サーキットブレーカーは、呼出し先での失敗が所定のしきい値を超えたときに、そのサービスへのリクエストを遮断する方式である。障害が解消するまで送信を抑えることで、待ち時間や資源消費の増大による障害の波及を抑える。設問のエラー回数による送信停止と一致する。

選択肢エ

これは不正解だよ。サービスディスカバリーは、利用可能なサービスの所在や接続先を見つける仕組みである。接続先の変更に対応するために使われるが、エラー回数が設定値を超えた場合の送信停止を定める方式ではない。設問の目的は、障害の影響を局所化して波及を抑えることである。

学習のポイント

障害の波及を抑える方式と、責務の分離・遠隔呼出し・接続先の発見を担う仕組みとの違いを理解する。

出典:独立行政法人 情報処理推進機構(IPA)令和6年度春期 システムアーキテクト試験 午前Ⅱ 問3(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針