2014-11-19 1 views
4

Мы боролись с этим в течение последних 12 или около того месяцев. Мы считаем, что это связано с тем, что у одного или двух приложений происходит утечка памяти или большое количество утечек, которые, наконец, накопились за годы программирования в классическом ASP. Мы начали преобразование в ASP.NET, но у нас все еще есть большое количество приложений в классическом стиле.Ошибка утечки ASP.DLL (или что-то), вызывающая постоянный перезапуск w3wp

Мы попытались изменить способ перезапуска IIS, в зависимости от использования ЦП и памяти, и мы попытались очистить некоторые процессы. Мы установили множество аналитических инструментов, чтобы отслеживать, где именно оно происходит, безрезультатно.

Как раз сегодня мы смогли наконец отследить более подробное сообщение об ошибке «Обнаружено возможное блокирование или утечка критического раздела в asp! G Template cache + 88, принадлежащем потоку 72 в W3WP». В нем также говорится, что «ASP.DLL в настоящее время держит блокировку критического раздела в диспетчере кеша ASP ...».

error screen

Итак, есть ли какой-либо инструмент, который поможет отслеживать, где наша утечка прибывает из? Или, может быть, лучший способ перезапустить это, прежде чем он заморозит весь наш веб-процесс?

Я ценю ваше время!

+0

Какая версия IIS? Какой сервер? – pee2pee

+0

@JanuszJasinski IIS 7 и Windows Server 2008 – Aarmora

ответ

0
  1. Вы должны использовать класс кеша (для html) для просмотра наиболее просматриваемых страниц: http://www.webdevbros.net/2006/11/18/cache-object-for-classic-asp/.
  2. Вам необходимо закрыть все соединения в конце страниц.

Это позволит устранить утечку памяти.

Смежные вопросы