すごいよ、マイクロサービスアーキテクチャ!

Tech

マイクロサービスアーキテクチャを一言でいうと

一枚岩(モノリス)のシステムではなく、複数の疎結合なサービスの集合体でひとつの仕事を成し遂げるアーキテクチャである。

マイクロサービスアーキテクチャの何がすごいのか?

  1. サービス毎の独立性が高いので、ひとつの修正の影響が全体へ波及するようなことがない。
  2. サービスごとに独立して開発を進めることができるので、全体の調整が少なく、開発スピードを早めることができる。
  3. Amazon, Netflix, クックパッド, メルカリなど、名だたるWeb企業が採用している。

マイクロサービスアーキテクチャは、SOA(サービス指向アーキテクチャ)とは違うのか?

マイクロサービスアーキテクチャは、SOAに由来するが、異なるアーキテクチャである。以下が参考になる。

InfoQ: SOAとマイクロサービスの違いとは?

Qiita: [翻訳]マイクロサービスの考え方、SOAとの違い。

マイクロサービス、SOA、API:味方か敵か

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

マイクロサービスアーキテクチャにおける、アーキテクトの役割は?

書籍「マイクロサービスアーキテクチャ」によると、ソフトウェアのアーキテクトは、建築士ではなく、都市計画家と考えた方が良い、とのことである。

都市計画家は 「この建物をあそこに建てよう」とは言わず、代わりに「都市を区画」します。

「区画」とは、なんの比喩でしょうか?

区画はサービス境界、またはおそらくサービスの粒度の粗いグループになります。

そして、アーキテクトは、「区画間」で起こることに時間を費やすべき、とのことなのです。 「区画内」で起きていることは、独立したチームにまかせてしまうのです。

最後にまとめると、マイクロサービスアーキテクチャは、

ひとつのサービスの振る舞いに集中して開発することができるので、開発現場の働き方改革の救世主だ!

タイトルとURLをコピーしました