システム刷新において「マイクロサービス化」は有力な選択肢ですが、必ずしも万能な解決策ではありません。運用コストの増大や複雑さに直面するケースも増えています。本記事では、マイクロサービスの課題と、新たな選択肢として注目される「モジュラーモノリス」について解説しています。
近年、多くの企業でデジタルトランスフォーメーション(DX)が進む中、レガシーシステムの刷新においてマイクロサービスアーキテクチャが推奨されてきました。その主な理由は、システムを小さなサービス単位に分割することで得られる「スケーラビリティ」と「開発の柔軟性」にあります。
具体的には、機能ごとに独立してシステムを拡張(スケール)できるため、アクセスが集中する箇所だけを強化することが可能です。また、サービスごとに最適な技術スタックを選定できる「技術の自由度」や、各チームが独立して開発・デプロイを行える「チームの独立性」も大きなメリットです。これにより、システム全体を止めることなく、迅速な機能追加や改修が可能となり、開発アジリティ(俊敏性)が向上すると期待されてきました。
しかし、マイクロサービスはいわゆる「銀の弾丸」ではありません。導入には「分散システムならではのコスト」が発生することを直視する必要があります。
モノリシック(一枚岩)なシステムであればメモリ内の関数呼び出しで完結していた処理が、マイクロサービスではネットワーク越しの通信となるので、以下の問題が懸念となります。
また、データベースが分散されるため、データの整合性を保つためのトランザクション管理(Sagaパターンなど)の実装工数が大幅に増大します。さらに、Kubernetesなどのコンテナ管理ツールの導入によりインフラ運用が複雑化するため、高度なDevOps文化や自動化の仕組みが不可欠です。これらの体制が整っていない場合、運用コストが肥大化し、かえって開発スピードが低下するリスクがあります。
こうしたマイクロサービスの課題に対する「現実的な最適解」として注目されているのが、「モジュラーモノリス」です。
モジュラーモノリスとは、デプロイ単位(実行ファイルやコンテナ)は1つの「モノリス」ですが、内部のコード構造については機能(モジュール)ごとに綺麗に分割・整理されているのが特徴のアーキテクチャです。
このアーキテクチャには以下のメリットがあります。
モジュラーモノリスは、将来的に特定のモジュールだけをマイクロサービスとして切り出すことが容易です。そのため、まずはモジュラーモノリスで構築し、ビジネスの成長や必要性に応じて徐々にマイクロサービスへ移行する「ストラングラーパターン」を採用することで、リスクを最小化しながらモダナイゼーションを進めることができます。
最終的にどのアーキテクチャを選択すべきかは、技術の流行ではなく、「ビジネス課題」と「組織の能力」から逆算して決定する必要があります。
以下の条件に当てはまる場合は、マイクロサービスが適しています。
一方で、以下のケースでは、あえてモノリスやモジュラーモノリスを選ぶ方が、コスト・スピード・品質の面で有利になります。
感覚だけで選ぶのではなく、プログラム解析技術などを活用して既存システムの依存関係を可視化し、システム切り出しによる「保守開発工数の削減率」や「連携部品の開発コスト」といった投資対効果(ROI)を試算することを推奨します。自社の状況を客観的に分析し、最もビジネスメリットの大きいアーキテクチャを選択してください。

デジタル戦略立案から老朽システムのクラウド刷新、大規模基幹統合まで対応し、データ活用経営とコスト削減を実現します。
大手金融業・製造業企業の支援ノウハウあり。世界中の生産拠点の情報統合・可視化により、データを活用した経営を強力に進めます。
古くなってしまったシステムを現在のIT技術でクラウド化し、自社データセンターの廃止など、大幅なコスト削減を実現します。

医療・教育機関向けに高セキュリティ開発と運用監視を提供し、情報漏洩ゼロの安心感で安定稼働を支援します。
システムの品質やセキュリティに強みがあり、これまでの開発実績・ノウハウを品質管理規定としてまとめ、情報漏洩事故は0件※です。
※2024年10月調査時点
電子カルテや学籍などの個人情報データ管理において、リリース後も不正接続等を一切排除する監視サービスを提供できます。

初期費用ゼロで業種特化型システムを導入でき、運用代行も可能なため低コストかつリソース不足を解消できます。
開発リスクを抑えつつ、業務システムをオーダーメイド。飲食店の顧客管理、販売・入金管理、デリバリー対応などの豊富な連携事例があります。
開発費の代わりに月額利用料を支払うことで、運用を依頼可能。「スタッフ管理を運用するためのスタッフが必要…」という状況を解決します。