GLOSSA

マイクロサービス

まいくろさーびす

Microservices

一言でいうと

システムを役割ごとに小さなサービスに分割して、独立に開発・運用する設計パターンのこと。

詳しい意味

マイクロサービスは、システムを役割(ドメイン)ごとに小さなサービスに分割し、それぞれを独立して開発・デプロイ・スケールする設計パターンです。「ユーザー管理」「決済」「通知」「検索」を別々のサービスとして実装し、APIで連携。各サービスは別言語・別DB・別チームでもよい、というのが特徴。Netflix / Uber / Amazon が大規模化する過程で採用した方式として有名。利点は「障害の局所化」「個別スケール」「チームの自律性」、欠点は「分散システムの複雑性」「運用ツールが大量に必要」「初期コストが大きい」。小規模ではモノリスが正解で、規模に応じて切り出すのが現実的なアプローチです。

何に使うか

組織が複数チームに分かれていて、独立した開発速度が必要なとき。負荷の高い特定機能だけ個別スケールしたいとき。技術スタックを部分的に変えたいとき。

どんな時に出るか

「マイクロサービスに分割」「モノリスからマイクロへ移行」「マイクロは早すぎる」といった場面で登場します。

具体例

  • 決済機能だけマイクロサービスに切り出して、PCI DSS 対応スコープを最小化した。
  • マイクロサービス化は組織が大きくなってから検討すべきで、最初はモノリスで作るのが現実的。

別名・略称

microservices(まいくろさーびす)microservice(まいくろさーびす)

関連語

モノリスAPI

間違えやすい語

モノリス

初心者向けメモ

巨大なデパート(モノリス)を、専門店ビル(マイクロサービス)に分けるイメージです。各専門店が独立に営業し、お客さん(ユーザー)は必要な店だけ回る。複数店舗の仕入・物流・スタッフ管理が必要になる代わりに、1店舗が休業しても他は営業できます。

この説明に改善点はありますか?

この説明を修正提案する新しい用語を提案する

提案は管理者が確認した後に反映されます