サードパーティのデータ ストレージの読み取りと書き込みを行うアプリケーションがあります。そのデータストレージのコードはクローズドソースであり、私たちはそれについて知らず、変更することもできません. 読み取りと書き込みが可能なスリムな API しかありません。
悲観的オフライン ロックは、複数のトランザクションにまたがり、並行アプリケーションがそれを操作できるようにするのに役立ちます。それはうまくいくと思います。
しかし、現在、他のソフトウェアもそのストレージに読み書きし、そのデータ ストレージに変更が発生するとアプリケーションが更新されるという問題があります。データ ストレージ自体は通知を提供しません。サードパーティのソフトウェアは、何かが変更されたことを示すグローバルな状態を変更しません。
そのデータ ストレージを「観察」し、イベントを発行して (ソフトウェアの) すべてのクライアントを更新するためのパターンやベスト プラクティスはありますか?
絶対に最後の手段でない限り、イベントを定期的に読み取り、比較し、公開することは本当にしたくありません。おそらく誰かがここでより良いアイデアを持っていますか?