マイクロサービスアーキテクチャ(Microservices)の利点(独立デプロイと変更容易性)

マイクロサービスアーキテクチャ(Microservices Architecture) は、大規模なアプリケーションを単一の密結合なプログラム(モノリス)として構築するのではなく、独立して開発・デプロイ・運用可能な小さなサービス群に分割し、軽量なAPI(RESTやgRPCなど)で連携させる設計手法です。 各サービスが疎結合であり、独立したコードベースとリポジトリを持つため、特定のサービスに対する新機能追加、改修、バグ修正、技術スタックの刷新を行った場合でも、システム全体を再ビルド・再デプロイすることなく 該当サービス単体で安全かつ迅速に変更・リリースできる(変更容易性が極めて高い) 利点があります。したがって、正解は ウ です。 ア: マイクロサービスではサービスごとに最適な言語や技術スタックを自由に選択(ポリグロット)できるため、技術の統一を強制するものではありません。 イ: サービスごとに個別の分散データベースを持つため、サービス間のデータ整合性(結果整合性)の維持はモノリスよりも難易度が上がります。 エ: サービス間の通信がネットワーク経由のRPC/HTTPとなるため、サービス呼出し回数やネットワークオーバーヘッドはモノリスよりも増加します。

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

出典令和4年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問20
ア
各サービスが使用する,プログラム言語,ライブラリ及びミドルウェアを統一しやすい。
イ
各サービスが保有するデータの整合性を確保しやすい。
ウ
各サービスの変更がしやすい。
エ
各サービスを呼び出す回数が減るので,オーバーヘッドが削減できる。