2章マイクロサービスのモデル化

相手の論法は、異教徒を思い出させる。その異教徒は、世界は何の上に立っているかと問われ、「亀の上に」と答えた。しかし、その亀は何の上に立っているかと問われ、「別の亀の上に」と答えた。

−ジョセフ・フレデリック・バーグ牧師(1854年)

ここまでで、マイクロサービスは何かがわかり、おそらく、主な利点も理解できたでしょう。そろそろ、マイクロサービスを作り始めてみたいのではないですか。しかし、どこから始めればよいですか。本章では、情報隠蔽、結合、凝集などの基本概念を取り上げ、これらの概念が、マイクロサービスの境界線を引く考え方をどのように変えるかを理解していきます。また、この分野で非常に役立つテクニックであるドメイン駆動設計(DDD)について、さらに深く焦点を当てるとともに、今後利用するであろうさまざまな形式の分解についても見ていきます。

まず、マイクロサービスの境界を考え、その利点を最大化し、潜在的な欠点を回避する方法を見ていきます。しかしその前に、説明しておくことがあります。

2.1 MusicCorpの紹介

考え方に関する書籍では、実例があった方がわかりやすいでしょう。可能な限り実世界の話を共有しますが、架空のシナリオを用意することも有効だと認識しています。本書では、いたるところでこのシナリオに戻り、マイクロサービスの概念がこの世界でどのように機能するかを見ていきます。

そこで、最先端のオンライン小売業者、MusicCorpに注目してみましょう。MusicCorpは最近まで実店舗を構える小売業者でしたが、レコード販売事業の底が抜けてから、オンライン販売に軸足を移しています。MusicCorpは自社のWebサイトも持っていますが、今こそオンラインの世界への賭けに出るタイミングだと感じています。スマートフォンで音楽を聴くことは一過性のブームであり(明らかにZune ...

Get マイクロサービスアーキテクチャ 第2版 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.