В HTTP2 браузер может делать до 100 одновременных запросов (проверил на FF, насчёт Chrome не уверен).
Всё-таки CDN, в первую очередь, нужен для снижения задержки (RTT) для пользователей, находящихся физически далеко от вашего дата-центра.
В сетях 4G высокий RTT (пинг). Если у вас сервер расположет в Москве и к вам на сайт зайдёт пользователь с Камчатки, то задержка может быть 200мс или выше. В случае с CDN, ресурсы с большой долей вероятности будут скачаны с сервера, физически расположенного ближе к пользователю.
Вы абсолютно правы. И когда все работает идеально, то так оно и есть. И если сделать фронтенд бандлом и закинуть его на CDN - все будет быстро и хорошо. Но таких людей реально единицы. Обычно я вижу кучу ссылок на разные CDN из-за чего загрузка сайта на телефоне, где соединения открываются медленно, это печалька. Чтобы CDN был полезен нужно чтобы люди понимали что он делает, какой ценой и какие проблемы решает. Я про случай когда единственный повод не использовать CDN для разработчика - лень скачивать и собирать библиотеку.
И раз вы упомянули HTTP 2. Не будет ли такого, что для SPA где весь index.html - это 50 строчек с подключением бандлов и минителом-контейнером, куда будет маунтиться сам приложение, будет быстрее подтянуть через то же соединение бандлы чем открывать новое до ближайшего CDN сервера?
Лично у меня в условном index.html всегда отличаются подключаемые скрипты в DEV и PROD версиях. Этим же способом решается и указанная проблема.
Если придерживаться моей точки зрения, то не нужно пихать CDN без необходимости в каждый сайт. Крупный бизнес-то он справится. А вот у мелкого наоборот все поотваливается во время очередных обострений РКН.
Имхо будет больше вреда, если в вебе CDN будут делать не бездумно, априори потому что хорошая практика. Сейчас во многих тутриалах включение стилей и скриптов по CDN воспринимается как самой собой разумеющееся. Люди смотрят и повторяют не думая, что это за магические ссылки такие. Так что мой заголовок меньшее зло. Даже у тех кто не прочитает статью в голове где-то отложится, что нужно дважды подумать про CDN.
Вы абсолютно правы. И когда все работает идеально, то так оно и есть. И если сделать фронтенд бандлом и закинуть его на CDN - все будет быстро и хорошо. Но таких людей реально единицы. Обычно я вижу кучу ссылок на разные CDN из-за чего загрузка сайта на телефоне, где соединения открываются медленно, это печалька. Чтобы CDN был полезен нужно чтобы люди понимали что он делает, какой ценой и какие проблемы решает. Я про случай когда единственный повод не использовать CDN для разработчика - лень скачивать и собирать библиотеку.
И раз вы упомянули HTTP 2. Не будет ли такого, что для SPA где весь index.html - это 50 строчек с подключением бандлов и минителом-контейнером, куда будет маунтиться сам приложение, будет быстрее подтянуть через то же соединение бандлы чем открывать новое до ближайшего CDN сервера?
Какой у вас стэк и фреймворк?
Если придерживаться моей точки зрения, то не нужно пихать CDN без необходимости в каждый сайт. Крупный бизнес-то он справится. А вот у мелкого наоборот все поотваливается во время очередных обострений РКН.
Имхо будет больше вреда, если в вебе CDN будут делать не бездумно, априори потому что хорошая практика. Сейчас во многих тутриалах включение стилей и скриптов по CDN воспринимается как самой собой разумеющееся. Люди смотрят и повторяют не думая, что это за магические ссылки такие. Так что мой заголовок меньшее зло. Даже у тех кто не прочитает статью в голове где-то отложится, что нужно дважды подумать про CDN.