У меня есть приложение веб-форм asp.net, которое использует System.Web.Caching.Cache для кэширования xml-данных из нескольких веб-сервисов в течение 2 часов.Сохраненные в кэше объекты Asp.net
webCacheObj.Remove(dataCacheKey)
webCacheObj.Insert(dataCacheKey, dataToCache, Nothing, DateTime.Now.AddHours(2), Nothing)
Каждые 90 минут сервер поиска Microsoft попадает на определенную страницу (паука), которая вызывает код для помещения объектов в кеш.
Проблема в том, что в течение определенного периода времени использование приложения в памяти растет экспоненциально. Допустим, что через неделю использование памяти в пуле приложений увеличивается до более 1 гб.
Я использую IIS7, и в настоящее время не включена утилизация пула приложений.
webCacheObj - это параметр, переданный функции в отдельный класс dll VB.NET, который добавляет элементы в кеш. (ByVal webCacheObj As Cache). – GordonB
, так что это просто ссылка на обычный объект кеша. – GordonB
Добавление Cache.NoSlidingExpiration исправил его .... Не уверен, почему он был настроен на ничего .... Большое спасибо. – GordonB