Веб-сайты ASP.NET под IIS 7.5 (Windows 7), работающим чрезвычайно медленный

Я только что установил Windows 7 x64 Ultimate на своем настольном ПК. Я установил IIS, Visual Studio 2008, зарегистрированный ASP.NET, и т.д.

У меня есть этот ASP.NET 3,5 веб-сайта, я работаю над выполнением ЧРЕЗВЫЧАЙНО медленного на этом новом IIS. На STA и серверах НАПОМИНАНИЯ (Windows 2003 Server) и на моем старом XP/IIS 5.1 все работает гладко.

Страница, которая обычно занимает 1-2 секунды для загрузки, занимает 8 секунд!!!

Я видел это сообщение на форуме IIS. Это говорит что-то о Vista/7, не объединяющей соединения (только для сообщения, веб-сайт работает локально, но это подключает к SQL Server 2005, размещенный на удаленном сервере).

Кажется, что это требует времени, чтобы "начать загружать" страницу... Я имею в виду, я нажимаю обновление, и это остается в течение нескольких секунд, "Ожидающих localhost"... Затем, когда это получает ответ, это обычно загружает целую страницу...

У меня нет подсказки, как вынудить Win7/IIS7.5 объединить соединения с базой данных.

Править: Я создал новое пустое веб-приложение ASP.NET, чтобы видеть, происходят ли проблемы также. Ответ не, он отвечает быстро, как он должен с пустой страницей по умолчанию. Возможно, что-то связанное с соединением с БД. Я сделаю дальнейший тест. Это должен быть способ зафиксировать его...

РЕДАКТИРОВАНИЕ 2: Отладка приложения, я заметил, что задержка происходит ПОСЛЕ выполнения кода.NET (Page_Load, и т.д.)... так задержка, кажется, где-нибудь, когда IIS служит странице браузеру.

14
задан emzero 4 March 2010 в 01:43
поделиться

2 ответа

Для тех, у кого такая же проблема, вот два возможных решения.

  • 1) Отключение поддержки IPv6 в Firefox (только для Firefox)

Большинство авторов, о которых я узнал, предлагают этот подход как самое быстрое и чистое решение. Все, что вам нужно сделать, это открыть настройки конфигурации в Firefox (about:config) и изменить параметр network.dns.disableIPv6 на true.

  • 2) Изменить настройки localhost в файле hosts (все браузеры)

Это пришло мне в голову как идея проверить, где и как я могу вмешаться в настройки IPv6 на моей машине. В одном из комментариев на вышеупомянутых источниках я увидел, что можно избавиться от проблемы, просто заменив localhost на имя машины в url.

Мне не потребовалось много времени, чтобы проверить и увидеть, что отключение поиска локального хоста IPv6 делает то же самое, что и отключение IPv6 непосредственно в Firefox.

Что вам нужно сделать, так это закомментировать / удалить эту конкретную строку в вашем файле hosts:

#::1             localhost

Примечание: ::1 обозначение является IPv6 эквивалентом IPv4 127.0.0.1 адреса поиска.

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

5
ответ дан 1 December 2019 в 15:21
поделиться

Вы можете попробовать запустить несколько процессов как пулы приложений:

  • Открыть IIS
  • Щелкните Пулы приложений
  • Щелкните правой кнопкой мыши пул приложений для вашего приложения { {1}} и нажмите Расширенные настройки
  • Найдите «Максимальное количество рабочих процессов» и обновите его до 3 (или количества процессов , которые вы хотите разрешить запускать ).
1
ответ дан 1 December 2019 в 15:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: