BT

DDD、イベント、マイクロサービス

| 作者: Jan Stenberg フォローする 34 人のフォロワー , 翻訳者 徳武 聡 フォローする 0 人のフォロワー 投稿日 2015年8月5日. 推定読書時間: 2 分 |

原文(投稿日:2015/06/29)へのリンク

マイクロサービスを素晴らしいものにするには、ドメイン駆動設計(DDD)が必要であり、5年から10年前に発生した誤ちはDDDによって解決されたが、マイクロサービスの世界でも同じことが起こっている。David Dawson氏はロンドンで開催されたDDD Exchange講演でこのように自身の考えを発表した。

Simplicity itself社のCEOを務める氏は、アーキテクチャを思想的な立脚点と定義し、問題に対してアプローチし、論理的に考えるための方法であり、問題を解決するためのガイドとなる原則であり、ソリューションそのものではない、という。設計がソリューションなのだ。アーキテクチャは進化しないが、設計を進化させるためにガイドとなる原則を活用することはできる。多くの企業が、技術的にはマイクロサービスを実装しているが、利点を得ていない。氏はガイドとなる原則が正しくないからだ、と考えている。

多くの人々とマイクロサービスについて話し合った後、氏が気づいたのは、皆独自の意見を持っていたが、ひとつだけ共通の認識があったということだった。それは、マイクロサービスはネットワークを境界として分離を行う、ということだ。氏はこの分離がマイクロサービスが生み出すすべての利益と欠点の源泉だと考えている。巨大なトレードオフであり、素晴らしい利点があるが、コストも背負わざるを得ない。

Dawson氏は、素晴らしいマイクロサービスを作るために注意しなければならないことは、DDDを実践するときに注意しなければならないことと同じだ、と考えている。例えば、アグリゲートルート、ゲートウェイ、ビュー、イベントなどだ。例えば、イベントはソフトウエアを変える。氏はイベントこそが、本当のユビキタス言語だと考えている。ユーザと話せば、彼らは発生することを言葉にする。それがイベントだ。また、氏はイベントの観点から考えると、マイクロサービスが抱える多くの問題が解消する、と考えている。氏はイベントの流れこそが唯一の真実だと考えている。データベースの動いていないデータは使い物にならない、データから価値が手に入るのは、動いているとき、つまり、問い合わせをしたとき、コマンドを送ったとき、データを変更するような処理をしたときだけだ、というのが氏の主張だ。

Dawson氏は現在のマイクロサービスのHTTPとRESTに対する脅迫的な観念は制約になっていると考えている。HTTPとRESTを使うのはひとつの統合スタイルではあるものの、リクエストとレスポンスという方法しか手に入らない。ブロードキャストやストリーミングはサポートしないのだ。メッセージングを活用すれば、これらの方式も手に入り、またもっといろいろなことができるようになる。氏はイベントソーシングを活用したマイクロサービスは問題に対するアプローチを大胆に変える方法だと考えている。

来年のDDD Exchangeは2016年6月10日に予定されており、参加受け付け中。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT