Влияние на производительность использования исходных карт css / javascript в производстве?
- Должны ли карты источников использоваться в производственной среде? Предоставляют ли они какие-либо преимущества, кроме отладки?
- Они влияют на время загрузки приложения из-за дополнительных обращений к серверу? Браузеры достаточно умны, чтобы загрузить
.map
активы после загрузки приложения и рендеринга? - Если браузер не может найти
.map
актив (404
ошибка), будет ли влияние на производительность? Должен ли я заботиться о его исправлении?
Обратите внимание, что исправить последний может быть не так просто, как обслуживание .map
активы, если есть сложные concat / minify шаги сборки.
2 ответа
Быстрый тест с использованием Charles Web Proxy показывает, что исходные карты загружаются, только если открыты инструменты разработчика. Если вы загружаете страницу без открытых инструментов разработчика, то нет запроса http на исходные карты.
Поведение было одинаковым в Chrome 43 и Firefox 38.
Похоже, что они не повлияют на производственную среду.
Из HTML5 Скалы:
По сути, это способ сопоставить объединенный / свернутый файл обратно с непостроенным состоянием. Когда вы создаете для производства, наряду с минимизацией и объединением ваших файлов JavaScript, вы генерируете исходную карту, которая содержит информацию о ваших исходных файлах. Когда вы запрашиваете определенную строку и номер столбца в сгенерированном JavaScript, вы можете выполнить поиск на исходной карте, которая возвращает исходное местоположение. Инструменты разработчика (в настоящее время ночные сборки WebKit, Google Chrome или Firefox 23+) могут автоматически анализировать исходную карту и отображать ее так, как будто вы работаете с незавершенными и не объединенными файлами.
http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/