Как прогреть веб-приложение ASP.NET, чтобы при переходе к нему не потребовалось много времени для загрузки? - PullRequest
3 голосов
/ 02 декабря 2011
Краудсорсинг

здесь: я работаю с устаревшим продуктом Classic ASP. Для проверки транзакций мы открываем iFrame (да, я знаю ... blecht!), А затем запускаем страницы сервера проверки на защищенном сервере в iframe. Проект оформления заказа - это веб-приложение ASP.NET.

Вот проблема: Первоначальная загрузка приложения занимает немного времени. Иногда 10 секунд. После того, как он нагрелся, он больше не нуждается в разогреве и работает мгновенно. Как ускорить начальную загрузку?

Моя идея (это глупость): пока пользователь щелкает в области Classic на веб-сайте, вызовите безопасную веб-службу на сервере проверки, чтобы оживить веб-приложение. Затем, когда пользователь действительно нажимает на вещь, она нагревается.

Есть еще идеи?

Ответы [ 2 ]

4 голосов
/ 02 декабря 2011

В зависимости от вашей версии IIS, я мог бы предложить модуль разогрева IIS 7.5, но, похоже, он больше не выпускается.Вы можете сделать несколько вещей:

  1. Создать службу (служба Windows, запланированное задание и т. Д.), Которая проверяет приложение каждые x минут или один раз утром, чтобы сохранить его.живы или проснулись.
  2. Увеличьте время простоя для пула приложений
  3. Создайте новый поток (или запустите всплывающее окно, или что-то, что может работать в фоновом режиме)когда он запускается первый раз, он выключается и выполняет процедуру разогрева, пока вы перемещаетесь по направлению к странице с помощью iframe, а затем закрываете его, как только он получает ответ.
0 голосов
/ 02 декабря 2011

Добавьте общедоступную страницу aspx или ashx, которая возвращает RSS-ленту, сообщающую время. Затем подпишитесь на этот канал RSS с помощью чего-то вроде Feedburner, который опрашивает RSS-каналы. Поскольку канал RSS каждый раз отличается, он будет опрашиваться чаще.

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

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