Низкая производительность с веб-сайтом .NET 3.5 на IIS 6, веб-сайт .NET 2.0 работает нормально

1

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

Я скопировал конфигурацию со старого сервера, экспортировав настройки IIS и файлы xcopy. Один из веб-сайтов находится в .NET 2.0, и все выглядит нормально с этим сайтом. Однако наш другой сайт (сторонняя корзина, использующая .NET 3.5) работает очень медленно - особенно при переходе со страницы корзины покупок на страницу оформления заказа.

Я охотился в течение 2 дней для объяснения этого. За это время я сделал несколько вещей, чтобы попытаться понять, смогу ли я хотя бы изменить поведение, но безуспешно. Вот список некоторых вещей, которые я пробовал:

  1. Запуск aspnet_regiis -i -enable и некоторых других опций этого инструмента, таких как -ua
  2. Удаление и переустановка всех версий .NET
  3. Удаление всех других веб-сайтов IIS, за исключением рассматриваемого
  4. Удалил и вручную добавил новый узел веб-сайта в IIS
  5. Я вручную отсканировал код для любых подсказок относительно того, что происходит. На этих 2 страницах есть вызов к серверу UPS, которого нет нигде в приложении, но я смог нормально подключиться к этому серверу.
  6. Пролистал руководство по установке приложения, чтобы убедиться, что там не было пропущенных шагов.
  7. Переустановил сертификат SSL и проверил промежуточную конфигурацию сертификата.
  8. Перезагрузил сервер.
  9. Сравнил ключи реестра, связанные с IIS.
  10. X Копировал еще одну копию этой версии приложения в каталог (сначала удаляя старую) на случай, если оригинал был поврежден.
  11. Перебрал параметры конфигурации в IIS, включая файл журнала, пулы приложений, SSL и конфигурацию ASP.NET.
  12. Обнаружено, что файл подкачки виртуальной памяти не настроен. Я попытался настроить один, но программное обеспечение виртуализации (virtuozzo) отключило настройку при перезагрузке.

Во всяком случае, я подумал, что я бы просто выпустил это на случай, если я что-то упустил. Я делаю тестирование, используя конфигурацию файла hosts, поскольку DNS в данный момент указывает на старый сервер. Имя хоста требуется для доступа к сайту. 2 конфигурации одного и того же сайта можно сравнить, чередуя эти 2 записи файла хостов:

# New Server (with slowness)
#173.0.131.172  www.foldingchairdepot.com
# Old Server (working fine)
67.215.161.58   www.foldingchairdepot.com

Новый сервер - Windows Server 2003 RC2 Enterprise Edition.

Странно то, что, хотя я вижу медлительность на клиенте, на сервере практически не используется ЦП. Я проверил несколькими способами, что я определенно достигаю нового сервера с записью файла хоста. Я также пытался с 2 разных подключений к Интернету и несколько разных версий браузера.

Буду признателен за любую помощь, чтобы попытаться решить эту проблему.

NightOwl888
источник

Ответы:

1

Проведя еще несколько исследований, я обнаружил, в чем проблема. Оказывается, новый виртуальный частный сервер был размещен на другом объекте, чем старый. Само по себе это не было проблемой, но база данных все еще находилась на прежнем месте в 1200 милях.

В любом случае, решение моей проблемы состоит в том, чтобы переместить базу данных в то же средство (и локальную сеть), что и VPS, и сейчас я занимаюсь этим.

NightOwl888
источник
0

Вы, конечно, сделали свою домашнюю работу. Это и хорошо, и плохо. Это означает, что вы предоставили отличную информацию, но она не оставляет простых предложений. ;)

Некоторые предложения:

  1. Я заметил, что домашняя страница не работает «большую часть времени» на старом сайте, и я заметил, что даже некоторые изображения терпят неудачу. Например, это изображение . Это, возможно, причина неудачи. Если вы можете отследить причину сбоя файла .gif, это может привести к ответам на остальные вопросы.

  2. Проверьте журналы IIS для любых подсказок. Если вы этого еще не сделали, вы можете отредактировать настройки журнала, чтобы включить время. Это пригодится, а также код состояния. Сравните посещение хорошего сервера с новым сервером и посмотрите, отличаются ли они. Любые различия будут хорошими.

  3. Посмотрите Event Viewer и Process Monitor (www.systeminternals.com). Procmon удобен для отслеживания проблем с отказом в доступе.

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

Скотт Форсайт - MVP
источник
Спасибо за информацию. Я не вижу здесь ошибки домашней страницы (или изображения), не могли бы вы сообщить мне, какой браузер вы используете для его получения? Я забыл, что оставил этот вопрос открытым, хотя уже нашел ответ - оказывается, новый VPS географически находится в другом состоянии, чем старый, а база данных - нет.
NightOwl888
Рад, что вы поняли это. Удаленная база данных сделает это. Я могу воспроизвести проблему, установив в файле hosts адрес 173.0.131.172 и пару раз обновив страницу. Это терпит неудачу без пары попыток. Затем я посетил оригинал и скопировал ссылку на изображение вашего логотипа в верхнем левом углу. Тогда я посетил это непосредственно: foldchairdepot.com/BVModules/Themes/Depot/images/… . Это терпит неудачу на 173.0.131.172 IP.
Скотт Форсайт - MVP
А, ну ладно. У меня есть специальный веб-сайт, настроенный на VPS, который предназначен для того, чтобы все ловить - ошибки 403 и 404 переходят на пользовательскую страницу с именем Default.htm (которая также настроена как страница по умолчанию). Страница является сообщением о том, что веб-сайт закрыт на техническое обслуживание. Если вы не смотрите на браузер, вы увидите ошибку HTTP при запросе изображения, в противном случае вы увидите страницу обслуживания.
NightOwl888
Понял тебя. Приятно знать, что это ожидается.
Скотт Форсайт - MVP