Как уменьшить время первой загрузки в ASP.net MVC 2? - PullRequest
5 голосов
/ 10 января 2011

У меня есть приложение ASP.net MVC 2, которое хорошо работает локально. Однако когда я перемещаю файлы на свой рабочий сервер, первое время задержки составляет около 30 секунд, и я предполагаю, что это первая компиляция. После этого приложение работает нормально. После примерно 20-30 минут бездействия приложения загружаются примерно через 30 секунд.

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

Есть ли хитрость, чтобы приложение работало быстрее при первой загрузке?

Я использую ASP.net 3.5, IIS 6, Visual Studio 2010, MVC 2.

Спасибо

Ответы [ 3 ]

6 голосов
/ 10 января 2011

Скотт Гу имеет хороший пост в блоге здесь

РЕДАКТИРОВАТЬ:

Есть похожий пост здесь на serverfault, который может быть полезен.

2 голосов
/ 12 января 2011

Я решил написать приложение службы Windows, которое будет вызывать мои страницы каждые 10 минут, пока оно работает хорошо.

0 голосов
/ 11 января 2011

По сути, пул приложений не используется и автоматически завершает рабочий процесс.Затем, когда вы пытаетесь получить доступ к странице, он должен запустить рабочий процесс и подготовить все.

Если вы работаете под Server 2003, вы можете запретить ему останавливать рабочий процесс.У Бенсона Ю есть хороший ответ:

http://forums.asp.net/p/1307768/2666610.aspx

По сути, зайдите в диспетчер IIS, найдите пул приложений asp.net 3.5, в котором размещается ваше приложение, и измените его свойства производительности либоне останавливать рабочий процесс или иметь более длительное время ожидания.

...