Ускорить компиляцию веб-приложений - PullRequest
1 голос
/ 20 января 2011

Я попытался посмотреть на «связанные» вопросы, чтобы найти ответы на эти вопросы, но, похоже, они на самом деле не связаны ...

В основном у меня есть приложение VB.Net с каталогом, раздел администрирования (которые могут изменять каталог, отслеживать просмотры страниц и т. д.) и другие основные страницы клиентской части.

Когда я компилирую и запускаю приложение на своем локальном компьютере, оно, кажется, компилируется довольно быстро и работает очень быстро.Однако при развертывании на сервере загрузка первой страницы занимает, по-видимому, целую вечность (независимо от того, какая это страница, сколько существует таблиц стилей / файлов JS, сколько существует изображений, насколько велика разметка страницы искоро).После этого ВСЕ страницы загружаются очень быстро.Я думаю, это из-за необходимости загружать код с нуля;после этого, пока он не будет переработан, приложение работает идеально быстро.Кто-нибудь есть идеи, как я мог ускорить эту часть приложения?Я боюсь, что некоторые клиенты (при медленном соединении, таком как мое, со скоростью ниже скорости соединения) могут покинуть сайт, чтобы никогда не возвращаться из-за того, что он загружается недостаточно быстро.Любая помощь будет принята с благодарностью.

Заранее спасибо.

С уважением,

Ричард

PS Если вы обратитесь к некоторым из моих других вопросов, вы будетеузнайте немного больше о системе, например, о том, что большая часть данных загружается в объекты при загрузке первой страницы - я постепенно разбираюсь с этим, но, похоже, это не имеет большого значения.Вместо этого я подумал об использовании Linq-to-SQL, но это, насколько я знаю, не дает мне слишком много гибкости.Я предпочел бы определить свою собственную системную архитектуру и сделать ее специфичной для компании, а не работать в рамках ограничений Linq-to-SQL.

1 Ответ

0 голосов
/ 20 января 2011

Если вы можете, самое быстрое и простое решение - просто настроить домен домена таким образом, чтобы он не перезагружался после периода бездействия.Как это выполняется, зависит от IIS 6 и IIS 7.

Другой вариант - написать небольшую служебную программу, которая запрашивает страницу с вашего сайта каждые 4 минуты, и настроить ее как запланированную задачу на другом ПК,на все время.Это, по крайней мере, предотвратит тайм-аут и последующую перезапуск AppDomain.Конечно, это хак, но иногда любое решение лучше, чем ничего.

Однако правильным решением является прекомпиляция ваших представлений .Как именно выполнить и развернуть, будет зависеть от того, какой именно тип проекта Visual Studio ваш веб-сайт.

...