過去 10 分以内に変更されたすべてのエンティティを取得するために、自動化されたポーラー (10 分間隔で設定) を持つイベント ストリームの作成を任されています。
現在、ビジネス ロジックでは、エンティティ内の特定のフィールドが変更された場合にのみ、新しい更新イベントを作成するように指示されています。どの特定のフィールドが変更されたかについての粒度がないため (何かが変更されたということしかわかりません)、次のことを実行する何らかの差別化メソッドを作成する必要があります。
- 以前のエンティティの状態を取得します
- この以前の状態を最新の状態と比較します (つまり、差分)
- ビジネス ロジックが重要であると判断したフィールドの少なくとも 1 つがあれば、更新イベントを作成します。
- 更新イベントが作成されている場合は、以前のエンティティの状態を最新のものに置き換えます
このアーキテクチャ上の問題を考慮して、このタイプのシステムを構築する方法に関する既知のパターンまたは一連のパターン、またはガイドラインはありますか?