Pedia

モノリシックアーキテクチャ

ものりしっくあーきてくちゃ

English: Monolithic Architecture

意味

モノリス(モノリシックアーキテクチャ)とは、ソフトウェアの全ての機能(UI、ビジネスロジック、データアクセスなど)を、一つの巨大なプログラムとして構築する設計手法。「一枚岩」の意味。開発当初はシンプルで作りやすいが、システムが大規模になると、一部の変更が全体に影響するため修正が難しくなり、デプロイやスケーリングも困難になる。対義語は「マイクロサービス」。

概要

全ての機能(UI、ビジネスロジック、データベースアクセスなど)が、1つの巨大なプログラム(一枚岩)として結合されているシステム構成。 Monolith(巨大な石柱)が語源。

特徴

昔ながらのシステム開発はこれが基本でした。

  • メリット: 開発初期はシンプルで作りやすい。デプロイ(配置)がファイル1つで済む。テストも容易。
  • デメリット: システムが巨大化すると、全体を把握するのが困難になる。一部の修正でも全体をビルド・デプロイし直す必要があるため時間がかかる。1箇所のバグでシステム全体がダウンするリスクがある。

マイクロサービスとの対比

AmazonやNetflixなどの巨大テック企業は、モノリシックの限界を迎え、機能を小さなサービスごとに分割して連携させる「マイクロサービスアーキテクチャ」に移行しました。 しかし、マイクロサービスは通信や運用が複雑になるため、スタートアップや小規模なシステムでは、あえてモノリシック(モジュラーモノリス)を採用する方が正解である場合も多く、適材適所での選定が必要です。

TOP / 検索 Amazonで探す