От меня потребовали установить Maximum virtual memory (in megabytes)
параметр в IIS6 включен, и он был включен со значением по умолчанию 500 МБ.
С тех пор возникла проблема из-за того, что пул приложений перезагружался несколько беспорядочно. Ну, это совсем не беспорядочно, это каждые 60 секунд. Наблюдение за процессом показывает, что объем виртуальной памяти значительно меньше 500 МБ. Простой тест: просто зайти на сайт, чтобы запустить процесс (это устанавливает виртуальную память примерно на 30 МБ), а затем ждать, ровно 60 секунд, показывает, что текущий процесс перезапущен и запущен новый процесс.
Я могу увеличивать это число небольшими приращениями, и время жизни этого процесса, кажется, немного больше. Приблизительно в 750 МБ симптомы полностью исчезают (как и полное удаление проверки).
Maximum used memory
также проверяется и устанавливается по умолчанию 192 МБ.
Я не могу найти документальной документации, если это ошибка. Возможно, мне не хватает какой-то очевидной механики или я просто дурак. Во всяком случае, я не могу просто упираться в «увеличьте число, и вы не получите ошибки». Я должен знать почему.
Ответ: я тупой. знак равно
Диспетчер задач - монитор памяти для бедняков, и сегодня я, видимо, довольно хорошо это понял. Используя Performance Monitor и Process Explorer, я смог увидеть, что действительно мой пул приложений получал ~ 550 МБ виртуальных байтов при первом обращении к странице.
Мне все еще кажется странным, что у меня есть 60-секундный льготный период до перезапуска пула приложений, но пусть будет так. Надеюсь, этот ответ поможет кому-то другому, совершившему ту же ошибку, что и я.