8
Microservices Architecture
• Amazon.comの 変遷
– 巨⼤なモノリシックなアプリケーションだった
• 同じような実装が多く出現するなど、End of Lifeな状態に
– Service Oriented Architectureに移⾏する決断をした
• DBへの直接アクセスを無くし、それぞれのコンポーネントはAPIを介してアクセス
• Worked really well, but we made a mistake
– Data Drivenにdecompositionしたことで、⼤きなデータセットの周りに⼤量の実
装が発⽣
– Item, Customer, and Order という3つの⼤きなデータセット
– 例えば ”Customer” はマスターサービスだけでなく、多くのものを扱う。ログイン、
アドレスブック、、全てのお客様の⾏動に関連するもの
• Data DrivenではなくFunctional Drivenなdecompositionを実施する必要性
– Function毎にスケーリング/信頼性/パフォーマンスに関する要求が⼤きく異る
– ログインは頻繁に⾏われるがアドレスブックは購買が発⽣するときにしかアクセス
されない
– 上記のような変遷を経て、現在ではPopularになったMicroservices Architectureへ