Я работаю над стратегией хранения и развертывания файлов JavaScript в Azure (веб-роль ASP.NET). Мои требования:
- Для использования уменьшенных версий в рабочей среде
- Использованиеисходные версии (т.е. не минифицированные) локальные версии в среде разработки (для упрощения отладки)
- Простой процесс сборки / развертывания (VS2010)
- Простой процесс обновления (время от времени файлы меняютсявремя)
Здесь большое обсуждение Visual Studio 2010: публиковать уменьшенные файлы javascript вместо оригинальных , однако это не учитывает преимущества, которые Azure может предложить или работаетс несколькими экземплярами.
Я подумываю развернуть мои минимизированные файлы JavaScript для хранения больших двоичных объектов и использовать их в рабочей версии.Они будут храниться с большим Max-age Cache Control для кэширования на стороне клиента, а имена файлов будут хранить версию (так что я могу легко обновить).Я приветствую отзывы об этой стратегии.
Таким образом, при разработке визуализированный HTML будет ссылаться на локальный файл сценария, а именно:
<script src="Scripts/myjavascript-0.0.1.js" type="text/javascript"></script>
Но в Производстве результат должен использовать следующее для ссылкив минимизированную версию.
<script src="http://myblob.blob.core.windows.net/Scripts/myjavascript-0.0.1.js" type="text/javascript"></script>
Мой главный вопрос заключается в том, как лучше всего добиться автоматического переключения путей при разработке и производстве.Или пользовательский обработчик будет нормальным маршрутом (и если да, то как это будет работать - я не хочу, чтобы каждый экземпляр перезагружался с большого двоичного объекта при каждом запросе).