創屋ぷれす

マイクロサービスとは

WEBアプリケーションのサーバー側システムを、1つの大きなアプリケーション(モノリス)として作るのではなく、小さなアプリケーション/サービスの組み合わせとして作る事。

■ 特徴
・一部サービスの更新のために必要となるのは、1つまたは少数のサービスのリビルド・再デプロイ
… 簡単にサービスを入れ替えできる/サービス間が疎結合
・1サービスとそのチームは技術視点でなく、ビジネス視点で分割する
… UI/DB/ロジックといった分割はしない
・サービス毎に適した実装ができる
… プログラミング言語 / DB / ハードウェア / ソフトウェア環境 など

開発・運用で考えると、非常にメリットが大きいと思えます。とはいえ、個々のサービスが単純になるといっても、サービス間の連携がすべて上手くいって1つのアプリケーションになる事に変わりは無く、また、連携するサービス間の状態に応じた設計が必要になったり、システム間の連携テストが複雑になるなどのデメリットもあるようです。

同様の考え方自体は以前からありますが、クラウドサービス+構成管理ツールをベースとした手法と共通的な知見が溜まってきているようです。

Comments are closed.