0

私はマイクロサービスを開発しています。私はCQRSパターンでEvent Sourcingを使用しています。ユーザーが1つのサービスから削除/更新したい場合、それを購読し、そのユーザに関するエントリをそのデータベースからも削除するためのイベントおよび他のサービスを含む。Event Sourcing&CQRSでpub/subパターンを使用する方法

イベントソーシングでpub/subパターンを使用する方法について質問したかったのですが、現在Azureテーブルを使用している人がいますが、どのようにpub/subとして使用できるのでしょうか?

+0

イベントがAzure Tableストレージにある場合、どのようにイベントを読み込みモデルに投影しますか? –

+0

現在、私はイベントストアを使用していません。私はAzure Table Storageではできないリードモデルにイベントを投影できるようなソリューションも探しています。そのため、私はこれを自動的に行うことができるイベントストアを求めています。 –

+0

答えで述べたように、EventStore(http://www.geteventstore.com)はサブスクリプションをサポートしています。この機能は、読み取りモデルを構築する最善の方法です。投影はパブ・サブではありませんが。後者はメッセージングパターンです。 –

答えて

2

どのイベントストアを使用できるのですか... ...?

使用する技術を選択するの贅沢を持っている場合は、私はあなたがはい、それは世界にCQRSを導入し、同じ男だグレッグ・ヤングEvent Store

を調べてから始めることをお勧め。

(プルとプッシュベースのモデルについての説明が含まれていますpolyglot dataの彼のトークを参照してください)。

0

は、どのように私はイベントソーシング

このユースケースは、自然eventsourcingを下に産むでパブ/サブパターンを使用することができますし、それを正確に実現する場合は、通知に関する質問自体が消えます。 共通バスを使って対話を実現することが最善です。集約または投影を実現する各マイクロサービスは、均一な論理バスに接続され、すべてのイベントで署名され、そこでイベントを送信することもできます。

もちろん、システムに負荷がかかっている場合、イベントの名前空間を入力したり、バスのブローカにどのようなイベントとどのマイクロサービスを指定するかなど、最適化する必要があります納品する必要があります。また、いくつかの情報がマイクロサービスのためにプライベートである場合、それはバスにプライベートチャネルを作るのが理にかなっていますが、集約間の検証とまったく同じ、イベントソーシングの理論によっては提供されません。

また、共通バスのコンセプトのおかげで、ブラウザなどのシステムのクライアントにとっても、「贈り物として」反応が得られます。ただし、イベントの場合のみ、集計の予測やステータスを登録しないでください。サーバーイベントがクライアントと等しくない場合は、中間エンティティを放送に入力することはできますが、これ以上のイベントの格納は行われません。

関連する問題