Использовать пользовательскую загрузку jQuery-ui или самостоятельной загрузки пользовательского интерфейса jQuery?

Я работаю над сайтом, где мы используем функцию слайда из jquery-ui.

Рекомендуемая в Google версия jquery-ui весит 63 КБ - это для всей библиотеки. Пользовательская загрузка только функции слайдов весит 14 КБ.

Очевидно, если пользователь кэшировал версию, размещенную в Google, без проблем, но если у нее ее нет, загрузка займет больше времени, так как я могу просто добавить пользовательскую функцию jquery-ui slide внутри моего файла main.js,

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

Я не могу понять, что лучше всего сделать в приведенном выше сценарии?

Ответ 1

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

Загрузка ресурса JavaScript имеет несколько последствий в следующем порядке событий:

  • Загрузка: запрос/ответная связь или, в случае получения кэша. Имейте в виду, что CDN или нет, сообщение влияет только на первую страницу. Если ваш сайт построен в традиционном стиле "полный запрос страницы" (в отличие от SPA и подобных), это буквально становится проблемой без проблем.
  • Анализ: JS-движок должен анализировать весь ресурс.
  • Выполнение: механизм JS выполняет весь ресурс. Это означает, что любой код инициализации/загрузки выполняется, даже если эта инициализация для функций, которые не используются на странице хостинга.
  • Использование памяти: использование памяти зависит от всего ресурса. Это включает в себя статические объекты, а также функцию (которые также являются объектами).

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

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

Ответ 2

Перейдите в версию, размещенную в Google

  • Вероятно, пользователь недавно посетил веб-сайт, на котором загружается jQuery-UI, размещенный на серверах Google.
  • Это отвлечет нагрузку с вашего сервера и ускорит загрузку других элементов.
  • Браузеры загружают определенное количество ресурсов из одного домена. Загрузка jQuery-UI с серверов Google гарантирует, что он будет загружен одновременно с другим ресурсом, который находится на ваших серверах.

Ответ 3

Сеть разработчиков Yahoo рекомендует использовать CDN. Их полные причины опубликованы здесь. https://developer.yahoo.com/performance/rules.html

Эта цитата с их сайта действительно запечатывает это в моем сознании. "Развертывание вашего контента на нескольких географически распределенных серверах сделает ваши страницы быстрее загружаемыми с точки зрения пользователя".

Ответ 4

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