2015-01-07 3 views
2

Каковы сценарии, когда вы хотите использовать CDN для загрузки javascript-файла? И какие файлы вы можете захотеть ленивой загрузки. Или, возможно, какие сценарии являются лучшим кандидатом для объединения и минимизации?Lazy Load vs Combine/Minify vs CDN Javascript (AngularJS)

, например:

JQuery + JQuery плагинов - должны они быть доступны через CDN или лучше сочетать/Минимизировать их, как быть доступны всего на один запрос

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

Позвольте мне знать вашу идею на этом

ответ

3

Этот вопрос является субъективным, но вот мое мнение.

CDN являются большими, потому что:

  1. Обеспечить лучшую производительность, содержание кэшируется во всем мире. Это будет означать более низкую задержку для сайтов, к которым можно получить доступ из широкого диапазона местоположений.
  2. Сценарии будут кэшироваться, поэтому, если я нахожусь на одном сайте, который использует последний стабильный Угловой на google cdn, а затем посещает другой с тем же, то выполняется только один запрос , Чем больше сайтов использует cdns, тем выше вероятность того, что скрипты будут кэшироваться, поэтому их следует использовать, когда это возможно.
  3. Уменьшите нагрузку на свои серверы, что, в свою очередь, снизит стоимость. Это особенно важно для сайтов, которые получают много трафика, а также облачных сайтов, поскольку вы платите за то, что используете. Я бы сказал, для облака это необходимо использовать КДС
  4. Как браузеры имеют ограничения на количество запросов в домене сразу, CDNs увеличит количество одновременных запросов к содержанию

Проблемы с CDN-х:

  1. для каждого сценария отдельного запрос должен быть (если кэшированный) так что это не может увеличить общее количество запросов для вашего сайта
  2. Cdn может пойти вниз или страдают проблемы с производительностью, которые могут привести ваш сайт, чтобы идти вниз. Если вы используете cdn, убедитесь, что у вас есть отказоустойчивость к локальной версии, если cdn не работает, например. для Угловое проверить window.angular

Объединение является большим, потому что:

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

Короче говоря, использовать КДС, когда вы можете для обычных сценариев, таких как угловые, Jquery и т.д., а затем использовать сочетание и Минимизация для ваших собственных сценариев , Вы должны стремиться к тому, чтобы иметь только один запрос для ваших собственных скриптов.

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

3

Вы найдете разногласие .. Некоторые люди предпочитают, чтобы объединить все файлы JS в одном файле, а некоторые нагрузки, когда требуется конкретный модуль JavaScript. Я предпочитаю объединять их в файл с подписью.

CDN Сценарий совершенно другой. Это полезно для параллельной загрузки. Браузер может загружать несколько запросов параллельно с сервером, поэтому лучше, если вы размещаете файлы css и js на CDN, чтобы браузер мог загружать их параллельно с HTML и другими файлами.

+2

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