У меня есть довольно большой веб-сайт (~ 75 000 LoC), на Azure развернуты две машины D2 v2 (7 ГБ ОЗУ, 2 VCPU).
Когда я делаю новую сборку, я наблюдаю:
- 1 из процессоров переходит на 100%
- Это длится до двух минут
- Затем
Application_Start
увольняют
Я пытаюсь сократить время с момента публикации до момента увольнения Application_Start
, так как мы публикуем регулярно, и это причиняет некоторую боль посетителям сайта.
Издание сайта состоит из:
- Публикация в папку (метод
File System
публикации) - Конфигурация
Release
- Удалить все существующие файлы отмеченные
- Предварительная компиляция во время публикации проверена
- Исключить файлы из папки App_Data отмечено
- В расширенных настройках прекомпиляции ничего не проверяется и не выбирается, кроме
Do not merge
в параметрах слияния. - Заархивируйте опубликованную папку, загрузите на виртуальную машину и разархивируйте, перезаписав существующие файлы (занимает всего несколько секунд)
Мой вопрос:
- Начальная задержка находится в пределах нормы, или я могу что-то сделать, чтобы измерить то, что она делает?
- Есть ли какие-либо настройки, которые я могу изменить, чтобы улучшить время достижения события
Application_Start
?