マイクロサービスは、アプリケーションが小さく、独立してデプロイ可能なサービスの集合として構築されるアーキテクチャスタイルです。各サービスは1つのビジネス機能を担当し、ネットワーク(HTTP、gRPC、またはメッセージング)を通じて通信します。
仕組み
各サービスは独自のプロセスで実行され、独自のデータストアを持ち、独立して開発、デプロイ、スケールできます。チームはサービスをエンドツーエンドで所有します。
text
┌──────────────┐
Client ─▶ │ API Gateway │
└──────┬───────┘
┌───────────┼───────────┐
▼ ▼ ▼
┌────────┐ ┌─────────┐ ┌──────────┐
│ Orders │ │ Payments│ │ Shipping │ ← each: own code + DB
└───┬────┘ └────┬────┘ └────┬─────┘
▼ ▼ ▼
ordersDB paymentsDB shippingDB
