проблема httpcache - asp.net, httpcontext.cache

У мене є сховище, яке витягує як з db, так і іноді з кеша.

Для цього я створив інтерфейсICacheWrapper, що дозволяє repo використовувати HttpRuntime.Cache, AppFabric, що завгодно. Бетонні класи ICacheWrapper зазвичай приймають кеш у конструкторі так: новий HttpCacheWrapper (HttpRuntime.Cache)

Конструктор репо приймає посилання на обгортку кеша так:

myRepo = new Repo(new HttpCacheWrapper(HttpRuntime.Cache));

Якщо я створюю 2 репо, чи глибоко скопіюється кеш? Я б не думав, але наші проблеми продуктивності вказують інакше. Чи я пропустив щось тут?

Дякую за будь-яку допомогу!

Відповіді:

0 для відповіді № 1

Що ти бачиш? Що робить HttpCacheWrapper з HttpRuntime.Cache, він проходить?

Я підозрюю, що те, що ви бачите, замість цього - цеПолітика кеша, яка затримує речі занадто довго для швидкості кешування речей. Як сказав Реймонд Чен, "неправильна політика кешу не відрізняється від витоку пам'яті".

Спосіб, яким я хотів би ізолювати це, - спробувати протестувати лише з одним репо за допомогою політики, яку ви маєте. Подивіться, чи з'являються ваші проблеми продуктивності.

Якщо ні, тоді йдіть вперед і створіть другий репо та уважно стежите за використанням пам'яті.