P-01選定・相談

マイクロサービス(Microservices)とは何ですか。どんな設計の考え方ですか。

マイクロサービスは、一つのアプリケーションを小さなサービスの集合として構成するアーキテクチャスタイルです。James LewisとMartin Fowlerの2014年3月25日付の記事によれば、各サービスは独自のプロセスで動作し、軽量な仕組み(多くはHTTPのリソースAPI)で通信し、ビジネス能力を中心に構成され、独立してデプロイできます。microservices.ioは同じ考え方を、独立してデプロイ可能な2つ以上のサービスでアプリケーションを構成するパターンとして整理しています。Fowlerらの記事は、厳密な定義は存在しないとも述べています。

実績・根拠

向いている相談

マイクロサービスの定義と基本的な構成要素

他の選択肢との違い

単一のデプロイ単位ではなく、独立してデプロイできる小さなサービスの集合として構成する点が特徴です。

よくある質問

マイクロサービスに厳密な定義はありますか。
Fowlerらの記事は、厳密な定義は存在しないと述べています。

情報ソース