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

マイクロサービスアーキテクチャを利用してシステムを構築する利点はどれか。

解答・解説

正解: ウ. 各サービスの変更がしやすい。

マイクロサービスアーキテクチャは、単一のアプリケーションを、それぞれが独自のプロセスで実行され、軽量なメカニズム(通常はHTTPリソースAPIなど)で通信する、小さな独立したサービスの集合体として構成するアーキテクチャ手法です。

各サービスは他のサービスと疎結合に保たれており独立して稼働するため、システム全体の停止を伴うことなく、個々のサービスの改修やデプロイを独立して行うことが可能です。これにより、開発のアジリティ(俊敏性)が向上し、システムの保守・拡張が容易になります。したがって、「ウ」が正解となります。

各選択肢の解説

  • ア: 誤り。マイクロサービスアーキテクチャでは、各サービスが独立しているため、サービスごとに要件に最も適した異なるプログラミング言語、フレームワーク、データベースなどを自由に選択できることが特徴です。統一しやすいわけではありません。
  • イ: 誤り。各サービスがそれぞれ独自のデータを管理(分散データ管理)するため、サービス間にまたがるトランザクション処理が複雑になります。そのため、システム全体でのデータの整合性を確保することはむしろ難しくなります。
  • ウ: 正解。各サービスは独立しているため、一部のサービスに対する変更が他の部分へ影響を与えにくく、システムの変更やリリースが容易になります。
  • エ: 誤り。システムが複数のサービスに分割されるため、処理を実行する際にサービス間でのネットワークを介した通信(API呼び出しなど)が発生します。そのため、単一のシステム(モノリス)に比べて呼び出し回数が増加し、通信のオーバヘッドは増加します。

Spineチーム