Подтвердить что ты не робот

Связывание .js файлов с CDN

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

Кроме того, нам рекомендуется объединить наши файлы .js, чтобы уменьшить количество запросов, которые выполняются на сервере при загрузке.

Итак, нам нужно сесть и принять решение, если мы будем использовать CDN или пакеты .js.

Каковы плюсы и минусы? Какие из них имеют смысл?

4b9b3361

Ответ 1

Почему вы не можете связать их и, чтобы разместить их как CDN? Это вряд ли может быть решением одного или другого?

Если вы имеете, чтобы выбрать тот или другой, это зависит от того, сколько файлов .js вы включаете. Для небольшого количества файлов я бы предположил, что CDN будет быстрее, где, как и для большего количества файлов, пакет из .js файлов будет определенно быть быстрее. Там, где будет переключаться, вам нужно поэкспериментировать.

Ответ 2

Мой ответ: оба. Свяжите их и поместите их на CDN.

Недостаток этого? Зависит. Как вы строите процесс? Можете ли вы легко автоматизировать комплектацию и минимизацию? Вы используете Yahoo YUI или Google Closure или что-то еще?

Кроме того, если есть много зависимых от GUI jQuery, может возникнуть некоторое трудоемкое трение из-за постоянного изменения элементов/эффектов/css.

Тестирование важно также потому, что из-за возможных причуд приумножения.

Нижняя строка: 5 файлов javascript, надежно упакованных в 1 файл === 4 меньше запросов.

Страница с просто старым Html и одним внешним справочником javascript === 2 запросов на ваш сервер. Тем не менее, страница с простой старой HTML и одной внешней ссылкой javascript на запрос CDN === 1 на ваш сервер.

В настоящее время мы используем инструменты Google Closure. Google Closure Inspector помогает со следующим:

Closure Compiler изменяет ваш исходный код JavaScript и производит код, который меньше и эффективнее исходного, но сложнее читать и отлаживать. Closure Inspector помогает, предоставляя функцию сопоставления источника, которая идентифицирует строку исходного исходного кода, которая соответствует скомпилированному коду.

Ответ 3

Как уже говорили другие, ответ, если это возможно. Объединение (и минимизация) дает преимущество вашим пользователям, потому что это уменьшает вес страницы. CDN приносит пользу вашим серверам, потому что вы разгружаете работу. Вообще говоря, вам не нужно оптимизировать, если вы не заметили проблемы с производительностью, или вам просто нечего делать.

Ответ 4

Есть несколько вещей, о которых вам нужно подумать...

Сколько из JS вам нужно загрузить на ранней стадии загрузки страницы, и сколько вы можете отложить дольше?

Если вы можете отложить загрузку JS (например, поместите ее в нижней части страницы) или загрузить ее асинхронно, как это делает Google Analytics, тогда вы уменьшите время загрузки JS-трастов, блокирующих поток пользовательского интерфейса.

После того, как вы сможете разделить нагрузку на JS, я бы рассмотрел слияние/минимизацию различных JS файлов. Сокращение HTTP-запросов является ключевым фактором повышения производительности.

Затем переходите к CDN и убедитесь, что CDN может обслуживать сжатый контент JS и позволяет вам устанавливать заголовки, чтобы он "кэшировался навсегда" (вам нужно будет обновлять файлы, если вы кешируете навсегда). CDN помогает уменьшить латентность, но также уменьшит размер, будучи cookieless

Другая вещь, которую вы, возможно, захотите рассмотреть, - это создать отдельный домен для статического контента, указать его на свой сервер (ы), пока вы разбираете вещи, а затем переключитесь на CDN, если он выглядит стоящим.

Andy