5

私は、コーディング スタイルを変更したくない (私を含む) 怠け者のプログラマーのためにコア サービス「ファサード」を実装しており、オブジェクト キャッシュを実装したいと考えています。キャッシュする必要がありますか」。

理想的な答えは、データが変更された場合を除いて永久にキャッシュすることです。

キャッシュからアイテムを削除するために使用できるデータ変更の「リスナー」を実装する方法はありますか?

ところで、今のところ、1 分間のスライド キャッシュ ポリシーで .NET のネイティブ ObjectCache (MemoryCache) を使用しています。

ありがとう、

N

4

1 に答える 1

7

私が知っている WCF にも Tridion にも組み込まれているシステムはありません。

もちろん、自分でロールすることもできます。

  1. イベント ハンドラーを使用して、TCM サーバー上の関連データへの変更をリッスンします。
  2. これらのイベント ハンドラーにイベントを中央の通知サーバーに転送させる
  3. WCF クライアントが起動時にその通知サーバーに登録するようにする
  4. その後、通知サーバーが接続されたクライアントに通知を送信するようにします

これは基本的に、Tridion の Broker Object Cache が Content Delivery 層で機能する方法と非常によく似ています。

このようなアプローチの実装に興味がある場合は、Signalr プロジェクトを参照することをお勧めします。これにより、多くの手間が省けます。


編集:WCFには、コールバックと呼ばれるものに似たものがあることがわかりました。この質問このブログ投稿を参照してください。

于 2012-07-29T14:11:01.683 に答える