従来のモノリシック(一枚板)のシステムアーキテクチャから、様々な機能を個々のサービスとして構成するマイクロサービスアーキテクチャへの移行が、大規模システムを保有する企業などを中心に、競うように進められています。
マイクロサービスアーキテクチャの最大のメリットは、ビジネスニーズに合わせて、俊敏にシステムの改善・変更ができることです。従来型のモノリシックなシステムでは、部分的な機能変更であっても、それがシステム全体にどのような影響が出るかについて素早く把握することが難しく、時間をかけて検証する必要がありました。
しかしながら、課題がないわけではありません。例えば、モノリシックなアーキテクチャからマイクロサービスアーキテクチャへの移行プロセスです。このプロセスはマイクロサービスのために正しい境界を判断することが必要となるため複雑で、データベースレイヤーにまで及ぶコード間の依存関係を解除しなくてはなりません。