Преимущества и подводные камни хостинга jQuery локально



в настоящее время мы вытаскиваем библиотеки jQuery и jQueryUI (и jQueryUI CSS) из Google CDN. Мне это нравится, потому что я могу позвонить google.load("jquery", "1");

и последний jQuery 1.x. x будет использоваться.



теперь я должен вытащить библиотеки локально из-за безопасности.



Я рад вытащить их локально, но мне интересно, каковы некоторые другие преимущества и подводные камни, чтобы следить за ними?

552   8  

8 ответов:

главным преимуществом наличия их на CDN является то, что файлы могут быть загружены параллельно с файлами, загруженными с вашего собственного сайта. Это уменьшает задержку на каждой странице. Итак, оборотной стороной этого является ловушка хостинга локально -увеличение задержки. Основная причина этого заключается в том, что браузеры ограничены в количестве подключений, которые они могут сделать одновременно к одному и тому же веб-домену. В IE6 это было по умолчанию для 2 одновременных подключений к одному домену - разделяется между всеми открытыми окнами IE!! в IE8 + он улучшился, по умолчанию до 6, который встроен в FF / Chrome, но все же, если у вас много изображений, и вы не используете спрайты, вы будете испытывать большую задержку.

используя CDN, я бы всегда устанавливайте версию библиотеки явно вместо того, чтобы получить последний. Это снижает риск взлома кода новыми версиями. Не очень вероятно, с jQuery, но можно.

другой основной преимущество использования CDN является снижение трафика на вашем сайте. Если вы платите за ГБ или находитесь на виртуальном сервере с ограниченными ресурсами, вы можете обнаружить, что общая производительность сайта увеличивается, а затраты на хостинг снижаются, когда вы отправляете часть своего контента на общедоступный CDN.

убедитесь, что вы также прочитали другой ответ на этот вопрос от @revaxarts. Это очень хороший трюк

Я всегда использую CDN (сеть доставки контента) от Google. Но на всякий случай это офлайн:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>!window.jQuery && document.write('<script src="jquery-1.4.2.min.js"><\/script>')</script>

захватите jQuery Google CDN и при необходимости вернитесь к локальному

Edit: Если вам не нужно поддерживать IE6, и ваш сайт имеет частичное использование https, вы также можете удалить http:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

другие покрыли преимущества. Подводные камни:

  • Если вы включаете только контент с вашего собственного сервера, это один сервер, который должен быть запущен-и не заблокирован брандмауэрами и т. д.-Чтобы ваш сайт работал. Потяните скрипт от третьей стороны, и теперь это два сервера, которые должны быть запущены и разблокированы, чтобы ваш сайт работал.

  • любой сайт вы тянете <script> от может полностью контролировать опыт пользователя на вашем сайте. Если бы Google был чувствуя зло, они могли бы поместить что-то в свою копию jQuery, чтобы войти в ваши нажатия клавиш, украсть личную информацию со страницы, на которой вы находитесь, чтобы связать ее с базой данных веб-отслеживания, заставить вас опубликовать "я люблю Google!- комментарии к каждой форме и так далее.

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

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

Google CDN:

  • кэширование, хорошо для производительности, больше пользователей, вероятно, уже есть, и он загружается параллельно
  • Если когда-либо, heaver запрещает cdn идет вниз. ты облажался.
  • если новая версия нарушает ваши существующие плагины или сайт, вы узнаете об этом, возможно, слишком поздно

локально:

  • разработка без подключения к сети возможна
  • все еще может получить некоторую производительность преимущества gzipping, в дополнение к минимизации

Я предпочитаю использовать свою локальную версию, потому что у меня нет контроля над тем, что они предоставят. Например, я не хочу, чтобы мои пользователи пострадали от google-analytics или чего-то подобного, потому что это правовая проблема в моей стране.

преимущества: (специально для CDN Google)

  1. загрузка параллельно с вашими файлами. Другие ответы касаются этого далее
  2. серверы Google, вероятно, смогут физически доставлять контент быстрее
  3. общие библиотеки и фреймворки уже могут быть на компьютере пользователя, так как кэш HTTP для CDN универсальная по всем сайтам
  4. ваша пропускная способность не должна была бы идти к обслуживанию большой библиотеки файлы

практически все, как вы смотрите на это, с помощью CDN Google является хорошей вещью.

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

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

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

для меня это действительно зависит от того, сколько контроля вы хотите иметь. Если вы похожи на меня и должны развиваться на местном хосте при работе и путешествиях. Наличие локальных файлов jquery лучше, чем его размещение в google или где-либо еще.

Comments

    Ничего не найдено.