IIS5, 6 и 7 проблем со скоростью после обновления - PullRequest
0 голосов
/ 24 апреля 2009

Я заранее приношу свои извинения, поскольку этот пост родился из-за серьезного разочарования.

У меня есть классический сайт asp, который работает на Windows 2000 / IIS5 в течение многих лет, и еще один сайт ASP.NET 2.0, который мы недавно начали на тех же серверах. Пока все работает хорошо.

В прошлом году я попытался обновить (свежую установку) до Windows 2003 / IIS6. Классический сайт ASP работал намного медленнее, примерно на 50% медленнее, в зависимости от журналов / статистики, усредненных за недели использования. Я попробовал все, чтобы узнать, что было медленно. Сетевые настройки. Интегрированная. Классический режим iis5. В процессе. Вне процесса. Ничто не улучшило ситуацию, и вскоре я вернулся к IIS5 / 2000. Тот самый день откатился назад, производительность вернулась туда, где она была. Это произошло на нескольких серверах. В конце концов, я сдался и записал это на счет каких-то проблем с TCP в 2003 году.

Недавно я установил сервер Windows 2008 / IIS на аналогичную, но более мощную машину в надежде, что все будет лучше. К счастью, мое классическое приложение ASP работает быстрее под Windows 2008. К сожалению, мое приложение ASP.NET работает на 50-75% медленнее по очевидной причине. Все это загружает контент. Он находится в той же сети, что и машина 2000 года. Сайт был скопирован непосредственно с другого компьютера, и это прекомпилированное веб-приложение из студии 2005.

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

Я пробовал пул приложений по умолчанию и классический пул .NET Без разницы. Повышено. / Проверьте максимальные потоки, максимальное количество на процессор во всех обычных местах, веб-гарен или нет, кажется, ничего не имеет значения. Я дважды проверил, что компиляция debug = false все еще установлена ​​в web.config.

Для быстрого теста я использовал ab.exe (Apache Bench) для отправки 10 запросов, по одному за раз. Даже если я использую IE или Firefox, чтобы попасть на сайт, он явно медленнее, чем под 2000, даже в соответствии с firebug.

В этот момент я расстроен и совершенно не уверен, с чего начать. Кто-нибудь сталкивался с таким беспорядком раньше?

Ответы [ 2 ]

0 голосов
/ 08 мая 2009

В моем случае ответ оказался простым, я запустил WireShark. Был 1 запрос внешнего ресурса, который не мог быть решен, так как тестовая машина не имела прямого доступа к Интернету, как действующая машина.

Это всегда мелочи.

0 голосов
/ 25 апреля 2009

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

...