CDN jQuery с множеством ненужных функций или собственный FTP jQuery с меньшим количеством функций? - PullRequest
1 голос
/ 08 июля 2011

Я только что понял, как добавить пользовательские функции / плагины в jQuery из моего предыдущего вопроса Как расширить jQuery из CDN? .Теперь мой вопрос: как, если некоторые функции в jQuery не нужны для страницы?Я решил удалить эти функции и просто добавить их позже, если они мне понадобятся.Но если я удалю их, я не смогу использовать CDN от Google для своего jQuery, теперь я уверен, что можно расширить jQuery из CDN, но я не думаю, что могу удалить некоторые функции там.

Вопросы:

  1. Что лучше (в любом аспекте), jQuery из CDN с множеством ненужных функций или jQuery на моем собственном FTP с уменьшенным размером (путем удаления ненужныхфункции)?

  2. Если измененный / уменьшенный jQuery на моем собственном FTP лучше, как правильно удалить эти функции?Какие конфликты?Или есть функции, зависящие от других функций?

  3. Если jQuery из CDN лучше, по вашему мнению, какой сервер лучше всего может предложить?

Ответы [ 4 ]

4 голосов
/ 08 июля 2011
  1. Независимо от того, уменьшаете ли вы размер jQuery или нет на своем собственном FTP, обычно вы не хотите изменять библиотеку jQuery, удаляя ненужные функции вручную, если у вас нет знаний о зависимости структура библиотеки (которую я думаю, что мы все не делаем). Поэтому я бы просто использовал jQuery из CDN в вашем случае на вашем месте.

  2. Как я уже сказал, очень трудно и почти невозможно изменить огромную библиотеку кода, такую ​​как jQuery, даже с использованием инструментов минификаторов, таких как YUI-компрессор или компилятор Google Closure..So, Again; Вы не хотите сделать это любой ценой.

  3. Насколько я знаю, гугл достаточно надежен. Однако вот несколько советов для вас:

- Microsoft CDN против Google CDN
- Почему Google CDN

1 голос
/ 08 июля 2011

Одна из основных причин, по которой я использую jquery, размещенный на CDN, заключается в том, что, скорее всего, мои пользователи уже кэшировали его.

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

Другая причина, как сказал Роб, это задержка.

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

1 голос
/ 08 июля 2011

Я выскажу свое мнение. Если ваш источник ftp совпадает с вашим веб-сервером, выберите источник FTP, если он находится на другом сервере, выберите CDN. Зачем? Надежность. Ваш сервер более вероятен, чем сервер CDN. Но если он находится на том же сервере, более вероятно, что cdn выйдет из строя (например, в случае сбоя интернет-службы), и если ваш сервер умрет, вся система умрет (библиотеки + ваш веб-код), понимаете? Цепь настолько сильна, насколько слабое звено .

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

Только мои 2 цента. Надеюсь это поможет. Приветствия

0 голосов
/ 08 июля 2011

Это хорошие ресурсы:

Yahoo Лучшие практики для ускорения веб-сайта

и

Загрузка скриптов без блокировки .

Если вы не используете свой собственный CDN (например, через Amazon Cloud), я сомневаюсь, что ваша версия jQuery, свернутая хирургическим путем, будет загружаться быстрее - это действительно важно для сервера. И я согласен с Бенни, что изменение библиотеки официально плохая идея.

Небольшой поворот в вопросе ... Если бы вы могли объединить jQuery с javascript-файлами вашего приложения, это будет работать лучше? Комбинируя файлы javascript, вы удовлетворяете первому правилу YSlow «Минимизировать HTTP-запросы», но за счет игнорирования второго «Использовать сети CDN». Я часто задавался вопросом, что лучше.

YMMV

...