Серверное приложение недоступно после обновления до.NET 4.0 и MVC 3. AppPool Recycle исправляет его

С тех пор, как мы установили.NET 4.0 и ASP.NET MVC 3 на наших серверах IIS и развернули наши веб-сайты, мы получаем "Серверное приложение недоступно".

В журнале событий нет журналов, касающихся проблемы.

Мы думаем, что это связано с установкой.NET 4.0 или MVC 3.0, поскольку мы видели, как это происходит на каждом этапе нашего развертывания. Сначала мы обновили нашу среду DEVelopment, затем нашу ACCeptation, и теперь, наконец, мы видим такое же поведение в нашей среде PRoDuction.

Повторное использование пула приложений определенного веб-приложения решает проблему.

У нас не было этого раньше, и мы задаемся вопросом, что могло бы изменить установка MVC 3.0 или.NET 4.0. Все наши веб-серверы работают на IIS6.

Обновление 12-08-2011
Мы заметили еще кое-что: когда у нас один пул приложений, на котором работают три приложения.NET 4. И мы изменили значение в web.config одного из этих приложений, что должно привести к его перезапуску, только это приложение больше не работает, два других по-прежнему работают нормально. Это означает, что автоматическое восстановление никогда не происходит при изменении файла внутри веб-приложения.

2 ответа

Решение

Мы обнаружили проблему, это было то, что посторонний человек никогда бы не узнал...

Поскольку мы хотим разделить сеанс между двумя приложениями, мы добавили SharedSessionModule в веб-приложение. Это в основном меняет имя приложения перед тем, как выбрать правильный сеанс из базы данных ASPState. Я получил этот модуль отсюда: http://www.codeproject.com/KB/session/sharedsession.aspx?display=Print

Это работает, но портит внутреннюю часть IIS, вызывая его сбой при переработке appPool.

Есть ли в вашем пуле приложений более одного приложения? Если это так, попробуйте разделить их на разные пулы, так как это может вызвать проблемы, особенно если два приложения используют разные версии.Net.

Другие вопросы по тегам