Ускорит загрузку нескольких CDN - PullRequest
0 голосов
/ 09 октября 2019

Я заметил, что сайт DJI Store использует несколько доменов CDN для хранения статических элементов.

Веб-страница: https://store.dji.com/?site=brandsite&from=nav

CDN:

https://asset2.djicdn.com/assets/v2/common/14292283_1302296159810439_4324228009709332653_n.jpg https://asset4.djicdn.com/assets/v2/build/app-0f0a05d6b0cd030cf68ca92e67816241.css https://product2.djicdn.com/uploads/sku/covers/31314/small_55e19eff-2d6a-4d75-8e63-b9b5822fd298.png

Просто интересно, какова цель использования более 1 домена CDN, большего количества параллельных загрузок?

Если да, то сколько доменов мне следует использовать?

1 Ответ

1 голос
/ 30 октября 2019

Это больше не рекомендуемый способ загрузки активов из CDN. Лучше использовать один CDN и загружать как можно больше ресурсов, чтобы HTTP / 2-соединение можно было повторно использовать, и странице нужно создавать меньше соединений.

В HTTP / 1.1 раз онРаспространена практика загрузки ресурсов на несколько хостов для распараллеливания их загрузки. Это была полезная практика в то время, и она могла значительно ускорить создание богатых веб-страниц для пользователей с большей пропускной способностью. Этот метод получил название Domain Sharding.

Но после HTTP / 2 он больше не требуется и считается плохой практикой. Представленное выше хранилище, похоже, построено в эпоху HTTP / 1.1 и оптимизировано для браузера того времени.

Существует еще один термин «случайное разделение домена», означающий, что практика веб-разработки привела к тому, что разработчики излишне полагаются на большееи больше хостов для доставки своего контента. Например, в наши дни сайты загружают шрифты из Google Fonts, публичные библиотеки из некоторых CDN javascript и размещают свой частный контент в частной CDN. Это требует, чтобы браузер открыл несколько ненужных соединений, которых иначе можно избежать, и не позволяет браузеру использовать мультиплексирование HTTP / 2. Но есть возможные решения, такие как PageCDN и EasyFonts , которые в совокупности могут помочь добиться максимальной производительности из доступных технологий, поскольку они загружают все ресурсы страницы через один CDN.

Если вы хотите увидеть случайное разбиение домена в действии, взгляните на исходный код http://www.piston.rs/dyon-tutorial/ Они загружают ресурсы более чем на 5 CDN, а их частному контенту (файлам CSS и JS на веб-сайте) по-прежнему требуется личный CDN.

...