Какие-либо проблемы / недостатки хостинга jQuery в Google? - PullRequest
15 голосов
/ 14 января 2009

Я слышал, что некоторым людям, у которых возникли проблемы с доступом к их сайтам, которые получают свой jQuery от Google, поскольку их корпоративный брандмауэр не любит сайты, получающие код с других сайтов, то есть межсайтовый скриптинг?

Кто-нибудь сталкивался с такой проблемой?

Ответы [ 9 ]

13 голосов
/ 14 января 2009

Одной из проблем является то, что сервер Google может и не работать в самый неподходящий момент. На мой ответ на вопрос « Какой у вас был самый неприятный опыт программирования? » я ответил:

Я демонстрировал новую сеть моей команды приложение к группе потенциальных пользователи. Мне потребовалось несколько минут, чтобы поговорить обо всех интересных вещах Google API визуализации может сделать, так как мы активно использовали его в нашем приложение. Чтобы продемонстрировать, я решил чтобы наметить несколько наборов данных, которые мы имеем собрал ранее. Было задумано передать сообщение: «Посмотрите, как легко это! Обычные люди могут делать добро смотреть графики, используя наш продукт. "

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

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

11 голосов
/ 14 января 2009

Полагаю, под хостингом в Google вы имеете в виду AJAX Libraries API ? Преимущества, которые я вижу:

  1. Вы сэкономите пропускную способность на своем сайте, поскольку JS исходит от CDN Google
  2. Вы можете увидеть лучшую отзывчивость и скорость, поскольку контент поступает из распределенного CDN Google, а не с ваших серверов.
  3. Если пользователи ранее посещали другой сайт, который использует Google для размещения своих библиотек JS, браузер пользователя может уже кэшировать их.
  4. Google применяет последние исправления ошибок и исправления безопасности для версии используемой вами библиотеки. Вопреки утверждениям других, они не автоматически обновляют вас до последней версии. Например. если вы укажете, что хотите Mootools 1.11, вам не будет предоставлена ​​версия 1.2 или более поздняя версия, если вы специально не измените свой сценарий, включив вызов, чтобы запросить его. Но они будут применять исправления, специфичные для этой версии.

И недостатки:

  1. Как вы упомянули, некоторые более усердные инструменты и продукты безопасности могут иметь проблемы с включением сценариев с другого хоста. Я не знаю, насколько это серьезная проблема, но ее стоит изучить.
  2. Это потенциально добавляет еще один поиск DNS к загрузке страницы.
  3. Google обязуется размещать каждую версию библиотек "на неопределенный срок", и вы надеетесь, что они это имеют в виду. Но состояния и политики меняются, и если хостинг-сервис прекращается, вам может потребоваться повторно посетить несколько сайтов, чтобы исправить их JS.
  4. Вы полагаетесь на стороннее устройство для размещения своего контента. Очевидно, вы ожидаете, что время безотказной работы Google будет довольно хорошим, но если у него действительно есть проблемы, вам, возможно, придется объяснить своему клиенту, почему его сайт не работает только из-за проблем с сетью Google.
  5. Google размещает полную версию каждой библиотеки, но некоторые, такие как Mootools, позволяют создавать собственные версии, содержащие только те компоненты, которые вам нужны. Таким образом, версия Google может быть более полной, чем вам нужно.
  6. У вас не было возможности настраивать или изменять библиотеку. Внесение последующих изменений в библиотеку - сложное предложение, но, если вы находитесь в затруднительном положении, это может быть самый простой вариант. Внешнее размещение библиотеки добавляет дополнительные сложности, так как вам придется переключиться на внутреннюю копию.
  7. Исправления ошибок применяются к выбранной вами версии, поэтому, если вы каким-то образом зависите от ошибочного поведения, это может вызвать проблемы. Предположительно, авторы библиотеки будут очень осторожны с возможными переломными изменениями, но по закону Мерфи проблемы могут возникнуть где-то.
3 голосов
/ 14 января 2009

Одним из огромных преимуществ является автономное использование. Я пишу довольно много кода в поезде без мобильных данных - поэтому наличие js в моем веб-проекте очень полезно Это также позволяет мне иметь полный контроль и уверенность в управлении изменениями.

3 голосов
/ 14 января 2009

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

Поскольку заголовок вашего вопроса спрашивает, есть ли какие-либо недостатки для размещения этого в Google, самый очевидный ответ, который приходит на ум, - это то, что они могут обновить свою версию в любое время, потенциально нарушая ваш код или вызывая неожиданный побочные эффекты. ОБНОВЛЕНИЕ: Гийом прокомментировал, что вы всегда ссылаетесь на конкретную версию jQuery при размещении. Я этого не знал - спасибо.

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

2 голосов
/ 14 января 2009

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

  1. Являются ли посетители моего сайта, как правило, постоянными посетителями? (В отличие от новых посетителей)
  2. Вероятно ли, что посетители моего сайта имеют быстрые сетевые подключения?
  3. Комфортно ли я в пределах выделенной пропускной способности моего сайта?

Каждый ответ «да» является причиной, чтобы не полагаться на Javascript, размещенный извне в Google.

Например: если вы работаете с сайтом наподобие StackOverflow, где ваши посетители, как правило, являются технически подкованными людьми с быстрыми подключениями и кэшами, которые полностью заполнены из пятидесяти других раз, когда они проверяли StackOverflow сегодня утром, выгода от размещения Javascript в других местах будет минимальным.

Но если вы работаете с сайтом для пожилых людей в Куала-Лумпоре от линии DSL 256 Кбит / с в вашем подвале, ваши посетители увидят некоторые хорошие результаты, если вы загрузите эти файлы JS в Google!

2 голосов
/ 14 января 2009

Я не знаю, но мне нравится самому управлять :), Я всегда загружаю JS на веб-сервер

1 голос
/ 12 декабря 2010

Некоторые страны могут блокировать доступ к домену google по всей стране через свои DNS-серверы.

0 голосов
/ 28 мая 2010

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

Мой ответ прост. Разместите это самостоятельно, проверьте это в своем исходном репозитории и правильно обслужите это с очень длинными заголовками срока действия. Таким образом, каждый загружает материал ОДИН РАЗ. Кроме того, я действительно не могу понять, что на самом деле не СОБСТВЕННЫЙ каждый файл, который мой сервер посылает по сети или говорит клиенту о загрузке.

0 голосов
/ 14 января 2009

Есть много недостатков в том, чтобы Google размещал ваш jQuery. Как и другие пользователи указали:

  • Google может обновить свою копию
  • Google может упасть
  • Конечные пользователи могут не иметь доступа к Google

Лучшим способом ответить на этот вопрос может быть вопрос: каковы ПРЕИМУЩЕСТВА того, чтобы Google размещал ваш jQuery? Только в определенных случаях я бы использовал межсайтовый хостинг для зависимостей. А именно:

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