マイクロサービスアーキテクチャのシステム構築上の利点|科目A-1(応用情報技術者) 令和6年 秋期午前試験 問47

出典:令和6年秋期 午前 問47 分野:システム開発技術 / 設計
マイクロサービスアーキテクチャを利用するとき,システム構築上の利点はどれか。
  • ア:各サービスが使用する,プログラム言語,ライブラリ及びミドルウェアを統一しやすい。
  • イ:各サービスが保有するデータの整合性を確保しやすい。
  • ウ:各サービスの変更がしやすい。
  • エ:各サービスを呼び出す回数が減るので,オーバーヘッドが削減できる。
応用情報技術者
解説

マイクロサービスアーキテクチャでは、システムを機能ごとの小さなサービスに分割し、それぞれを独立して開発・変更・デプロイできるようにします。

具体的な利点は下記の通りです。

  • 複数のチームで並行して開発しやすい
  • 障害が起きてもが他のサービスに影響しにくい
  • 特定のサービスの変更管理が容易になる

したがって、が適切です。

また、マイクロサービスアーキテクチャの逆で、システムを1つの大きなコードベースで構築する従来型の方法はモノリシックアーキテクチャと呼ばれます。

❌他選択肢が誤りの理由
ア:各サービスが使用する,プログラム言語,ライブラリ及びミドルウェアを統一しやすい。
⇒マイクロサービスでは、各サービスを独立して開発できるため、むしろ異なるプログラム言語や技術を採用することも可能です。技術の統一がしやすいことが主な利点ではありません。
イ:各サービスが保有するデータの整合性を確保しやすい。
⇒各サービスが独立してデータを管理するため、サービスをまたいだデータ整合性の確保はむしろ難しくなることがあります。
エ:各サービスを呼び出す回数が減るので,オーバーヘッドが削減できる。
⇒マイクロサービスではサービス間通信が増えることがあり、ネットワーク通信などのオーバーヘッドが発生しやすくなります。呼出し回数が減ることが利点ではありません。
TSUNAGARU-ADVICE

まず押さえたいこと

マイクロサービスアーキテクチャでは、システムを独立性の高い小さなサービスに分割して構成します。各サービスを個別に開発・変更・展開しやすいため、システム全体への影響を抑えながら機能改修を進めやすい点が利点です。

迷ったときの判断軸

マイクロサービスでは、サービスごとに異なる技術を採用できる一方で、技術の統一やデータ整合性の確保が必ずしも容易になるわけではありません。また、サービス間通信が増えるため、呼出し回数や通信オーバーヘッドが増える場合がある点にも注意しましょう。

科目Bにつなげるために

特にプロフェッショナルデジタルスキル(システム)試験合格を目指す方は、マイクロサービスを疎結合、独立デプロイ、サービス間通信と結び付けて理解しましょう。API設計やクラウドネイティブ構成、障害の局所化などの設計問題にもつながります。