1

私はjoliver/EventStoreライブラリを使用しており、ストリームからイベントを読み取らない方法を見つけようとしています。

その理由は、そこから 10,000 件のメッセージをすべてロードせずに、特定のストリームのストアにいくつかのイベントを書き込みたいだけだからです。

4

1 に答える 1

2

ストアを使用することが期待される方法は、常にGetById最初に行うことです。Aggregate とSaveそれを新しく作成した場合でも、CommonDomainEventStoreRepositoryで、まず既存のデータと関連付けられることがわかります。

最初に読み取りが必要な主な理由は、新しいコミット シーケンス番号を計算するために、インフラストラクチャが以前にいくつのイベントが発生したかを計算する必要があるためです。

これを最適化したいというあなたの例のしきい値の引用について...本当にそのレベルのイベントが発生する場合は、適切に効率的な方法が必要になるため、すでにスナップショットの領域に入っています。ブラインドライト以外のことをすることも。

スナップショットに依存するつもりがない場合でも、スナップショットを使用する利点の半分は、EventStore必要なときに備えて機能が組み込まれていることです。

于 2013-03-16T21:23:00.773 に答える