私は、データベースと、時にはキャッシュの両方から取得するリポジトリを持っています。httpcacheの問題
これを実装するために、私はHttpRuntime.Cache、AppFabricなどを使用できるようにするICacheWrapperインターフェイスを作成しました。私は2を作成した場合
myRepo = new Repo(new HttpCacheWrapper(HttpRuntime.Cache));
:新しいHttpCacheWrapper(HttpRuntime.Cache)
レポのコンストラクタは、そのようなキャッシュラッパーへの参照を取りますので、同じようICacheWrapperの具体的なクラスは、通常、そのコンストラクタでキャッシュを取りますrepos、キャッシュは深くコピーされますか?私はそうではないと思うだろうが、私たちのパフォーマンス上の問題はそれ以外の場合がある私はここで何かを逃したのですか?
ありがとうございました!
もう少しリサーチ/リファクタリングの結果:キャッシュから取り出されるもののリストが1つのキャッシュから提供されているようです。このリストは、要求されたWebフォームのニーズに合わせてフィルタリングされています。フィルタリングされたリストは、WebフォームUIにバインドされています。何が起こっているように見えるのは、キャッシュされたリストに加えてフィルタリングされたリストが作成されており、どちらもすぐにGC化されていないということです。 –