Первый запуск сайта Asp.net очень медленный - PullRequest
13 голосов
/ 25 августа 2008

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

Я предварительно скомпилировал сайт, но ничего не изменилось.

У меня нет кода при запуске приложения. У меня нет кешированных элементов.

Есть идеи? Как я могу узнать, что происходит?

Ответы [ 11 ]

12 голосов
/ 25 августа 2008

Это просто загрузка вашего домена приложения и загрузка любых двоичных файлов в память. Кроме того, он инициализирует статические переменные, поэтому если у вас есть статическая переменная, которая загружает много данных из БД, это может занять немного.

2 голосов
/ 25 августа 2008

Когда вы опубликовали сайт, вы решили сделать сайт «обновляемым» в настройках сайта публикации или нет? Если я хорошо помню, файл aspx / ascx также необходимо скомпилировать, и если он «обновляемый», то первый запуск вызовет перекомпиляцию этих ресурсов.

1 голос
/ 27 ноября 2013

Убедитесь, что вы публикуете свое приложение в «release», а не в «debug». Я заметил, что это значительно уменьшает время загрузки. Файл web.config будет обновлен.

1 голос
/ 31 декабря 2009

используйте http://www.iis.net/expand/ApplicationWarmUp для прогрева вашего приложения это для IIS 7.5 - поэтому, если вы работаете на сервере R2, тогда он будет работать.

1 голос
/ 25 июня 2009

Попробуйте очистить журнал событий?

1 голос
/ 25 августа 2008

Вы включили трассировку в своем файле web.config?

0 голосов
/ 27 августа 2008

@ Микки: Нет, он выключен. Нужно ли включать его, чтобы узнать?

Журнал трассировки покажет вам, сколько времени занимает каждое действие. Это может помочь вам найти то, что занимает так много времени.

Здесь - ссылка, которая может помочь вам настроить его.

0 голосов
/ 25 августа 2008

Начальная медлительность - это пара вещей:

  • Приложение настраивается
  • ASP.NET анализирует и компилирует страницы ASPX.
  • Глобальные контексты инициализируются.

Это нормальное поведение для ASP.NET.

0 голосов
/ 25 августа 2008

Когда вы говорите «прекомпилировать» сайт, используете ли вы для компиляции утилиту aspnet_compiler или просто используете опцию «Создать сайт» в Visual Studio?

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

0 голосов
/ 25 августа 2008

Просто быстрый поклон Даррену. Это типичное поведение приложения .NET после обновления DLL. После первоначальной загрузки все должно прекрасно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...