マイクロサービスとSOA

似ているよう異なる二つの概念をまとめる。

SOA(サービス指向アーキテクチャ)

  • いくつかのサービスのコレクションによってシステムを実現する構造
  • ソフトウェアを繋ぐミドルウェアであるESB(エンタープライズサービスバス)によって、サービス間の結合を実現する
  • サービス間で同じリソース、ストレージを共有する

マイクロサービス

  • いくつかのサービスのコレクションによってシステムを実現する構造
  • REST API のようなシンプルで軽い手段でサービス間の結合を実現する
  • サービスごとにリソース、ストレージが分離されている

ポイントは通信手段、リソースやストレージを共有するか否かというところかな。
マイクロサービスの方は、それぞれのサービスがより独立しているという認識。