Каковы преимущества включения библиотеки Jquery из библиотеки ajax api от Google?
Возможный дубликат:
Почему я должен использовать CDN от Google для jQuery?
Я видел многих веб-программистов, в том числе библиотеку Jquery из библиотеки ajax api от Google. Есть ли реальное преимущество в том, чтобы не размещать эти библиотеки на нашем сервере, кроме как сэкономить место? Это хорошая привычка?
4 ответа
5 причин, почему предприятия должны использовать CDN
7 причин использовать сеть доставки контента
CDN - сеть доставки контента (размещенные библиотеки)
Хотя у вас всегда должен быть локальный кеш на случай сбоя удаленного хранилища. ( HTML5 Boilerplate демонстрирует это очень хорошо):
<!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if necessary -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
<script>window.jQuery || document.write('<script src="js/libs/jquery-1.5.1.min.js">\x3C/script>')</script>
Позволить Google разместить API для вас.
- Снижение латентности
- Увеличение параллелизма
- Лучшее кэширование
Снижение латентности
CDN - сокращение от Content Delivery Network - распределяет ваш статический контент по серверам в различных физических местах. Когда браузер пользователя разрешает URL-адрес этих файлов, их загрузка будет автоматически ориентирована на ближайший доступный сервер в сети.
В случае CDN библиотек AJAX от Google это означает, что любые пользователи, не находящиеся рядом с вашим сервером, смогут загружать jQuery быстрее, чем если бы вы заставили их загрузить его с произвольно расположенного сервера.
Существует несколько сервисов CDN, сравнимых с сервисами Google, но цены на них трудно превзойти! Только эта выгода может решить проблему, но есть даже больше.
Увеличение параллелизма
Чтобы избежать ненужной перегрузки серверов, браузеры ограничивают количество соединений, которые могут быть установлены одновременно. В зависимости от того, какой браузер, этот предел может составлять всего два подключения на имя хоста.
Использование Google AJAX Libraries CDN устраняет один запрос на ваш сайт, позволяя параллельно загружать больше вашего локального контента. Это не имеет гигантского значения для пользователей с браузером с шестью одновременными подключениями, но для тех, кто все еще использует браузер, который допускает только два, разница заметна.
Лучшее кэширование
Потенциально самое большое преимущество использования CDN библиотек Google AJAX заключается в том, что вашим пользователям вообще не нужно загружать jQuery.
Независимо от того, насколько хорошо оптимизирован ваш сайт, если вы размещаете jQuery локально, ваши пользователи должны загрузить его хотя бы один раз. Каждый из ваших пользователей, вероятно, уже имеет десятки идентичных копий jQuery в кеше своего браузера, но эти копии jQuery игнорируются при посещении вашего сайта.
Однако, когда браузер видит ссылки на размещенные на CDN копии jQuery, он понимает, что все эти ссылки ссылаются на один и тот же файл. Поскольку все эти ссылки на CDN указывают на одни и те же URL-адреса, браузер может доверять, что эти файлы действительно идентичны, и не будет тратить время на повторный запрос файла, если он уже кэширован. Таким образом, браузер может использовать одну копию, которая кэшируется на диске, независимо от того, на каком сайте появляются ссылки CDN.
Это создает мощный эффект "кеширования между сайтами", от которого выигрывают все сайты, использующие CDN. Поскольку Google CDN предоставляет файл с заголовками, которые пытаются кэшировать файл до одного года, этот эффект действительно имеет удивительный потенциал. Поскольку многие тысячи сайтов с наибольшим количеством посещений в Интернете уже используют Google CDN для обслуживания jQuery, вполне возможно, что многие из ваших пользователей никогда не сделают ни одного HTTP-запроса на jQuery при посещении сайтов с использованием CDN.
Даже если кто-то посетит сотни сайтов, использующих одну и ту же версию jQuery, размещенную в Google, ему потребуется загрузить ее только один раз!
Pro:
Вы экономите трафик. JQuery и Ко. способны занять много места на трафике.
Гугл и Ко. CDN созданы для выполнения этой работы. Если кто-то может предложить такой контент очень быстро, чем сети, подобные этой.
Долгое время браузеры не могли загружать более двух файлов Javascript из одного домена. Если вы используете jQuery с google.com, ваш браузер сможет одновременно загружать файлы других приложений. Если это важно сегодня, это вопрос
Многие люди пользуются услугами Google или Microsoft или посещают веб-сайты, связанные их версией jQuery. Это означает, что у вас есть большой шанс, что ваш браузер уже где-то кешировал jQuery - более короткое время ожидания при загрузке!
Contra:
- Вы не можете использовать его, если у вас нет подключения к интернету (только локальные приложения)
Было бы гораздо больше шансов, что пользователь, посещающий ваш сайт, уже будет кэшировать версию Google, а не вашу собственную размещенную версию. (быстрее, потенциально)
Вам не нужно принимать его
Вам не нужно иметь дело с кэшированием (ну, если вы не используете запасной подход и версия Google не работает)
Если пользователь находится в Европе, а ваш сервер в Фарго, он, скорее всего, вытащит версию Google с гораздо более близкого сервера (быстрее, потенциально)
Сохраняет пропускную способность (каждый бит учитывается при оплате)
Я бы порекомендовал взглянуть на http://html5boilerplate.com/, в них реализован хороший запасной подход, когда вы не можете получить доступ к CDN от Google.