モノリス

全機能を 1 つのデプロイ単位にまとめたアーキテクチャで、シンプルだが大規模化で課題が生じる

アーキテクチャ設計
モノリス」の技術書を見る (5 冊) →

モノリスとは

モノリスは、全機能を 1 つのデプロイ単位にまとめたアーキテクチャである。シンプルで開発が速いが、大規模化するとデプロイの遅延やチーム間の調整コストが増加する。

モノリス vs マイクロサービス

モノリスとマイクロサービスの違いを以下にまとめる。

観点モノリスマイクロサービス
デプロイ全体を一括サービスごと
スケーリング全体をスケールサービスごと
開発速度 (初期)速い遅い (インフラ構築)
開発速度 (大規模)遅い (調整コスト)速い (独立)
運用の複雑さ低い高い
トランザクション容易分散トランザクション

モノリスの問題

モノリスの問題を以下にまとめる。

問題説明
デプロイの遅延小さな変更でも全体をデプロイ
スケーリングの非効率注文処理だけスケールしたいのに全体をスケール
チーム間の調整同じコードベースで衝突
技術スタックの固定全体が同じ言語・フレームワーク

モノリスの段階的分割

モノリスの段階的分割を図で示す。

Phase 1: モノリス (1 Lambda)
Phase 2: モジュラーモノリス (内部を分離)
Phase 3: マイクロサービス (Lambda を分割)

いつモノリスを選ぶか

いつモノリスを選ぶかの判断基準を以下にまとめる。

ケース推奨
新規プロジェクト✅ モノリスから始める
チーム 1〜5 人✅ モノリス
ドメイン境界が不明確✅ モノリス
チーム 10 人以上マイクロサービスを検討

より深く学ぶには関連書籍が役立つ。

この記事は役に立ちましたか?

関連用語

関連する記事