Size: a a a

JavaScript — русскоговорящее сообщество

2021 March 17

AP

Anton Permyakov in JavaScript — русскоговорящее сообщество
хттп2 решает проблему с подключениями
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Я лично разговаривал с Addy Osmani, он Engineering Manager браузера Chrome
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
И он мне прямым текстом сказал, что Хром работает активно над оптимизациями мелких файлов )
источник

N

Nelkor in JavaScript — русскоговорящее сообщество
Denys Mikhalenko
Маленькие файлы лучше
У нас просто пинцеты маленькие, нам нужны большие файлы для самоутверждения
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
У нас на работе 100500 маленьких файлов, все работает как надо )
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Один большой файл - это истории из начала 2000х, когда было HTTP1, на каждый файл открывалось отдельное tcp соединение
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Забудьте об этом
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Нормальные сайты сервятся по http2, все файлы там грузятся через одно соединение параллельно
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Маленькие чанки по прибытию клиенту сразу парсятся параллельно
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Все это сильно ускоряет загрузку сайта
источник

a

azabroflovski in JavaScript — русскоговорящее сообщество
Хазиф
Чтобы снизить количество обращений клиента к серверу.

Сейчас приведу практический пример, его можно воспроизвести.
Подключись к удалённому серверу и начни загружать на него 100 файлов, каждый по 1 мегабайту.
А потом один файл весом в 100 мб, архив.

Архив загрузится гораздо быстрее. Чем больше файлов — тем заметнее это ускорение.
У меня есть front.js и admin.js

зачем тащить admin js для юзера, который никогда не зайдет в админку, твой пример с архивом бред. (в контексте веб приложений)

Большое приложение нужно разбивать на чанки, даст хороший прирост так и на клиенте и на сервере, не нужно грузить 100500 логики на js, который не используется, нужно мере надобности подгружать
источник

Х

Хазиф in JavaScript — русскоговорящее сообщество
Denys Mikhalenko
И 1 файл и 10 делают одно обращение к серверу
Не согласен. Даже сейчас открываю любой сайт, смотрю в Network — обращений несколько, множество.

Сервер не знает, что тебе нужно отдавать скрипты, ибо не парсит HTML.
Потому сервер отдаёт скрипты только тогда, когда их запрашивает браузер, читая HTML.

Можешь поднять NodeJs с логированием и проверить. Для каждого файла — свой запрос.

Если же есть варианты это исправить — то скинь две ссылки. Первая на, разумеется, гайд/документацию. А вторая ссылка на объяснение того, почему крупные компании так не делают.
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Ох божечки )
источник

N

Nelkor in JavaScript — русскоговорящее сообщество
Denys Mikhalenko
Один большой файл - это истории из начала 2000х, когда было HTTP1, на каждый файл открывалось отдельное tcp соединение
Ладно, мы поняли, ты совершенно прав, спасибо за ценную информацию, дальше не читай это сообщение плиз.

(похоже, он понятия не имеет, о чём говорит. Давайте не будем с ним спорить)
источник

Х

Хазиф in JavaScript — русскоговорящее сообщество
azabroflovski
У меня есть front.js и admin.js

зачем тащить admin js для юзера, который никогда не зайдет в админку, твой пример с архивом бред. (в контексте веб приложений)

Большое приложение нужно разбивать на чанки, даст хороший прирост так и на клиенте и на сервере, не нужно грузить 100500 логики на js, который не используется, нужно мере надобности подгружать
Я дальше уточнил, к чему был пример с архивом.

С админом согласен, такие скрипты я не объединяю.
Здесь речь именно про то, что предназначено для одной конкретной страницы
источник

N

Nelkor in JavaScript — русскоговорящее сообщество
Хазиф
Не согласен. Даже сейчас открываю любой сайт, смотрю в Network — обращений несколько, множество.

Сервер не знает, что тебе нужно отдавать скрипты, ибо не парсит HTML.
Потому сервер отдаёт скрипты только тогда, когда их запрашивает браузер, читая HTML.

Можешь поднять NodeJs с логированием и проверить. Для каждого файла — свой запрос.

Если же есть варианты это исправить — то скинь две ссылки. Первая на, разумеется, гайд/документацию. А вторая ссылка на объяснение того, почему крупные компании так не делают.
Обращение к серверу, можно сказать, что и одно. Но на каждый запрос внутри этого обращения свои HTTP-заголовки, своя обработка и все вытекающие
источник

Х

Хазиф in JavaScript — русскоговорящее сообщество
Nelkor
Обращение к серверу, можно сказать, что и одно. Но на каждый запрос внутри этого обращения свои HTTP-заголовки, своя обработка и все вытекающие
Да, соглашусь
источник

Х

Хазиф in JavaScript — русскоговорящее сообщество
Хазиф
Да, соглашусь
Проблем со скоростью загрузки сайта НЕ наблюдаю.

Сейчас интересует производительность во время работы сайта.
источник

Х

Хазиф in JavaScript — русскоговорящее сообщество
Хазиф
Да, соглашусь
Эти заголовки можно даже посмотреть, если покопаться в панели Network)
источник

DM

Denys Mikhalenko in JavaScript — русскоговорящее сообщество
Эти заголовки сжимаются и вмещаются в один tcp пакет
источник