マイクロサービスアーキテクチャ 1章 マイクロサービス
マイクロサービスについて、過去に調べた内容をまとめる
マイクロサービスについて、過去に調べた内容を「はてな」に集約させることにした。
そういうわけで、手始めに『マイクロサービスアーキテクチャ』を読んだ内容を移植する。
1章 マイクロサービス
マイクロサービスは、協調して動作する小規模で自律的なサービスです。
→ SOA(Service-Oriented Architecture)の実現手法。
基本思想は「小さく、かつ1つの役割に専念」
凝集性を高めることが重要
単一責任原則:変更する理由が同じものは集める、変更する理由が違うものは分ける
「何をどの程度小さくすれば良いのか?」
どの程度?:大きいと感じなくなるまで・・・「開発チームに依存する」!!
指標として
RealEstate.com.auのJon Eavesは、マイクロサービスを「2週間で書き直せるもの」と特徴付けています。
コンポーネント分離の黄金律
他には何も変更せずに、単独でサービスの変更やデプロイを行える
go on developing...
参考
*1:『Code Complete 第2版 完全なプログラミングを目指して』では、デプロイ可能な単位だと説明があった(気がする)。