J OliverのEventStoreとmongoを永続層として使用する新しいプロジェクトのイベントソーシングを検討してきましたが、いくつかの質問に遭遇しました。
イベントソーシングを試す前は、ドメインはデータベースに永続化され、 NHibernateが作業単位を管理することで非常にうまく機能したUdiのドメインイベントパターンを使用していました。しかし、私は複数の集合体に影響を与える可能性のある1つの作業単位になってしまいました。
ハンドラーが応答するイベントを発生させるショッピングバスケットアグリゲートを「チェックアウト」し、請求書アグリゲートを作成してイベントを発生させます(これは単なる例です)。
この場合、2つの集約ルートを変更する1つの作業単位があります-イベントストアで、発生したイベントを2つの異なるイベントストリームに追加できますが、それらはアトミックな方法で永続化されません(最初は成功し、2番目は失敗する可能性があります) 。では、これを回避するために人々は何をしますか?
githubのホームページでは、流暢なインターフェイスを使用してEventStoreを構成できることが示されていますが、ソースをダウンロードしてコンパイルし、例を見ると、ワイヤーアップクラスが利用できないようです-別のブランチにありますか? ?(私にはマスターがいます)
IStoreEvents implを処理するための推奨される方法は何ですか?Nhibernatesセッションファクトリに似たシングルトンとして?