У меня есть проблема, когда запуск моего сайта ASP.NET без предварительной компиляции вызывает больше, чем медленный начальный запуск - сервер фактически работает с памятью и SQL-соединениями, проходящими через крышу. Я думаю, что происходит то, что когда страницы на сайте компилируются динамически, ASP.NET достигает порога, когда он хочет перезапустить приложение, поэтому он запускает новый экземпляр, в то время как старый экземпляр останавливается, и я получаю несколько экземпляров мое приложение работает.
В любом случае, я могу предотвратить это, систематически посещая страницы своего сайта после развертывания, но это занимает довольно много времени. Поэтому я начал искать возможность компилировать весь сайт на месте с помощью aspnet_compiler.exe.
Но, похоже, это не так - я отслеживаю общее количество приложений / компиляций ASP.NET и вижу, что счетчик растет, когда я открываю страницы, независимо от того, запускал ли я aspnet_compiler.exe. Я получаю хороший вывод компилятора - кажется, он работает - но страницы, кажется, компилируются динамически, когда я все равно нажимаю на них.
Я изучил эти два обсуждения SO:
Предварительная компиляция ASP.NET на месте не работает как ожидается
Помогает ли использование NGEN?
и они оставили меня в замешательстве.
Итак, в чем смысл — должен ли я предварительно скомпилировать все на месте, чтобы счетчик производительности компиляции оставался на нуле, когда я открываю страницы?