イベント ソーシングの概要
イベント ソーシングを使用すると、グレイン状態を柔軟に管理および保持できます。 イベント ソース グレインには、標準グレインよりも多くの潜在的な利点があります。 1 つは、さまざまなストレージ プロバイダー構成で使用でき、複数のクラスター間での geo レプリケーションをサポートします。 さらに、グレイン クラスを (グレイン状態オブジェクトで表される) グレイン状態の定義と (イベント オブジェクトで表される) グレイン更新の定義から明確に分離します。
ドキュメントは、次の内容で構成されています。
「JournaledGrain の基本」では、JournaledGrain<TGrainState,TEventBase> から派生してイベント ソース グレインを定義する方法、現在の状態にアクセスする方法、および状態を更新するイベントを発生させる方法について説明します。
「レプリケートされたインスタンス」では、 イベント ソーシング メカニズムがレプリケートされたグレイン インスタンスを処理し、一貫性を確保する方法について説明します。 競合するイベントや競合の可能性と、それらに対処する方法について説明します。
「即時/遅延の確認」では、イベントの遅延確認と再入によって可用性とスループットを向上させる方法について説明します。
「通知」では、通知をサブスクライブして、グレインが新しいイベントに反応できるようにする方法について説明します。
「イベント ソーシングの構成」では、プロジェクト、クラスター、およびログ整合性プロバイダーを構成する方法について説明します。
「組み込みのログ整合性プロバイダー」では、 現在付属している 3 つのログ整合性プロバイダーのしくみについて説明します。
「JournaledGrain の診断」では、接続エラーを監視し、単純な統計を取得する方法について説明します。
JournaledGrain API に関する限り、上記の動作は適度に安定しています。 ただし、開発者が標準イベント ストレージ システムを簡単にプラグインできるよう、近日中にログ整合性プロバイダーの一覧を拡張または変更する予定です。