私はORMレイヤのオブジェクトキャッシュを構築しました。基本的に、SQLクエリのハッシュがキーとして使用され、値にはDB結果セットのオブジェクトのコレクションが含まれます。ただし、結果セット内のオブジェクトの1つが更新されると、キャッシュされた結果セットに更新されたオブジェクトが含まれていないと、問題が発生します。書き込みの一貫性はありません。書き込みの整合性をどのように実装しますか?APCキャッシュの一貫性の問題
おかげ
UPDATEは:現在、私はどのようなオブジェクトがキャッシュされると、そのキーを扱うObjectWatcherクラスを持っています。オブジェクトは検索可能なキーでキャッシュされるので、Personクラスの場合はPerson.101です。 SQLクエリがハッシュされ、キーがDependencyオブジェクトにマップされます。このオブジェクト内に依存オブジェクトのリストがあります。そのため、は、Person.101とPerson.102にマップされるAPCからDependencyオブジェクトを返すことがあります。結果のコレクションは、このDependencyオブジェクトから作成されます。これは、単一のオブジェクトの更新でうまく動作します。だから私がPerson.101を更新して新しく更新されたオブジェクトをAPCに置き換えて古いものを上書きすると、古いクエリが実行されると、その更新されたオブジェクトがその結果セットに入れられます。メモリからオブジェクトだけでなく、更新されたオブジェクトへの参照を保持するすべてのDependencyオブジェクトを消去する方法が必要です。 APCでは、キーと値を含むキーや値を含むキーを検索する方法がありますか?
申し訳ありませんが、私はより具体的にすべきでした、私は質問を更新しました。 APCでキーにタグを書き込むと、タグを含むキーを検索するにはどうすればよいですか? – Gcoop