Asp.net кэшированные объекты остаются в памяти - PullRequest
0 голосов
/ 24 марта 2010

У меня есть приложение веб-форм asp.net, которое использует System.Web.Caching.Cache для кэширования XML-данных из ряда веб-служб в течение 2 часов.

  webCacheObj.Remove(dataCacheKey)
  webCacheObj.Insert(dataCacheKey, dataToCache, Nothing, DateTime.Now.AddHours(2), Nothing)

Каждые 90 минут сервер поиска Microsoft попадает на определенную (пауковую) страницу, которая вызывает код для помещения объектов в кэш.

У меня проблема в том, что со временем использование памяти приложением растет в геометрической прогрессии. Допустим, через неделю использование памяти пула приложений возрастает до 1 Гб.

Я использую IIS7, и в настоящее время переработка пула приложений не включена.

1 Ответ

1 голос
/ 24 марта 2010

Ваша первая остановка должна быть здесь . Это относительно короткая справочная страница. Выучи это, люби это, живи этим. ; -)

Тем не менее, попробуйте это:

Cache.Insert(dataCacheKey, dataToCache, Nothing, DateTime.Now.AddHours(2), Cache.NoSlidingExpiration)

p.s. что случилось с webCacheObj? Есть ли причина, по которой вы не вызываете статический кэш?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...