ASP.NET MVC против веб-форм для скорости загрузки первой страницы для больших проектов

У нас есть довольно большой проект ASP.NET WebForm (веб-приложение) с множеством ссылок на другие библиотеки, другие проекты и т. Д., И большую часть времени после компиляции, при первой загрузке страницы требуется много времени, прежде чем что-то делать. ... Дисковый ввод-вывод - главная проблема. Для небольших проектов это почти мгновенно, но как только ваш проект станет большим, он может действительно замедлить разработку и убрать удовольствие от программирования.

Мой вопрос: является ли время загрузки первой страницы после компиляции таким же продолжительным в ASP.NET MVC, как и в ASP.NET Webforms для больших проектов?

12.12.2008 01:21:16
Действительно зависит от реализации. Вы можете сделать медленное и быстрое приложение asp.net mvc или webforms.
Todd Smith 12.12.2008 01:42:05
Я не совсем понимаю ... почему это замедляет развитие? Вы тестируете в IIS или на сервере Visual Studio? Мы обычно используем последнее, и первая загрузка занимает несколько секунд на приличной машине. Наше решение имеет ~ 15 проектов, ~ 1000 файлов классов и около 100 представлений.
Beep beep 6.01.2010 05:57:00
3 ОТВЕТА
РЕШЕНИЕ

MVC по-прежнему использует ту же платформу ASP.NET, что и веб-формы, поэтому вы, вероятно, увидите подобное поведение, независимо от этого.

Долгое время первой загрузки связано с тем, что выходные данные сборки вашего проекта по-прежнему представляют собой просто код IL, который должен быть скомпилирован в собственный код компилятором JIT перед выполнением. Любые изменения кода, которые вы сделаете, приведут к удалению ранее кэшированного собственного кода для вашего приложения, поэтому JIT придется перекомпилировать. Естественно, чем больше ваш проект, тем больше времени потребуется JIT для его обработки.

3
12.12.2008 02:05:15

Вы увидите одинаковое время загрузки в обеих средах.

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

2
12.12.2008 05:27:25
Он говорит о во время разработки.
Todd Smith 12.12.2008 07:08:44

Есть много вещей, которые можно сделать, чтобы улучшить производительность, усовершенствования, чтобы обеспечить разделение проблем в приложениях MVC, могут очень помочь. Хотя механизм представления по умолчанию повторно использует веб-формы, представления имеют гораздо более простой стек управления, чем типичные веб-формы, что очень помогает, не говоря уже об альтернативных механизмах просмотра.

удар по «первому представлению» происходит от необходимости JIT большого набора классов / объектов, которые используются в вашем проекте и его первой странице.

1
21.05.2009 19:48:13