Производительность в саду на Azure
Используя http://docs.orchardproject.net/Documentation/Deploying-Orchard-to-Windows-Azure я успешно развернул Orchard в Azure.
Примерно через каждые 20 минут бездействия (перезапуск пула приложений?) Для отображения страницы требуется несколько минут. Я использую экземпляр Extra Small в Azure. Веб-экземпляр, хранилище и база данных SQL находятся в одном центре обработки данных - SE Asia.
Существует модуль, называемый keepalive, который выполняет регулярный пинг.
или http://blog.smarx.com/posts/controlling-application-pool-idle-timeouts-in-windows-azure
Также отключил отладку (!) И полностью доверяю, как описано здесь http://docs.orchardproject.net/Documentation/Optimizing-Performance-of-Orchard-with-Shared-Hosting
Поэкспериментируем с настройками / прогревом страниц.
Пинг кажется тяжелым - я что-то упустил?
2 ответа
Вы правы в отношении перезапуска пула приложений - по умолчанию время простоя составляет 20 минут. Если вы установите значение 0 (бесконечно), вы не увидите паузу после 20 минут бездействия.
Стив Маркс написал о том, как это сделать. Он включает в себя задачу запуска, вызывающую командный сценарий с повышенными правами, который устанавливает время ожидания пула приложений:
%windir%\system32\inetsrv\appcmd set config -section:applicationPools -applicationPoolDefaults.processModel.idleTimeout:00:00:00
Боюсь, что маленький экземпляр может не очень хорошо подходить Орчарду, который вряд ли можно назвать "очень маленьким". Например, сайт Orchard работает на двух обычных веб-экземплярах. Он работает довольно быстро, и, поскольку пользователи постоянно его используют, вы очень редко видите холодный старт. Если проблема заключается в бездействии, тогда ваша единственная возможность - это искусственно зайти на сайт или увеличить время ожидания домена приложения. Тем не менее, даже холодный запуск не должен занимать более нескольких секунд на сервере разумного размера, так что для того, чтобы отвлечь вас от лишнего, достаточно нескольких минут.