Сегодня 30 июня 2026
18+
MWC 2018 2018 Computex IFA 2018
реклама
Новости Software

Почему сайты стали тяжелее приложений и кто на самом деле виноват?

Если открыть любой крупный сайт и посмотреть, сколько данных он загружает при первом посещении, можно удивиться: десятки мегабайт кода, сотни запросов к серверу, сложная логика, выполняемая прямо в браузере. Иногда современный веб-сервис весит больше старого десктопного приложения. При этом пользователь все равно может жаловаться: «тормозит».

Почему веб стал таким сложным? Виноваты ли React, Vue и Angular? Что происходит в споре SPA и SSR? И почему зеленый отчет Lighthouse не гарантирует хороший пользовательский опыт?

3DNews поговорил с Владиславом Мещеряковым, senior frontend-разработчиком и тимлидом. За его плечами работа в продуктовых командах и заказной разработке, а сегодня – участие в создании highload-продуктов в сфере спортивных развлечений, обслуживающих миллионы пользователей, где архитектурные решения напрямую влияют на бизнес.

— Владислав, расскажите, в какой момент веб начал «тяжелеть», на ваш взгляд?

Владислав Мещеряков: Не было одного переломного дня, это была постепенная эволюция. Изначально сайт – это страница с текстом и картинками. Сервер отдает HTML, браузер его показывает и на этом все.

Сегодня веб – это прикладная платформа: он должен мгновенно реагировать, обновлять данные в реальном времени и поддерживать сложные сценарии. Пользователь привык к мобильным приложениям, где все плавно, быстро и интерактивно. Теперь он ждет того же от браузера. Чтобы это обеспечить, логика начала «переезжать» в браузер. Раньше сервер формировал страницу целиком. Сейчас значительная часть вычислений происходит на стороне клиента – в JavaScript. Это автоматически увеличивает объем кода и сложность системы. В highload-продуктах фронтенд уже не просто «отображает», а становится частью вычислительной системы.

— То есть виноват не React?

Владислав Мещеряков: React и другие фреймворки – это скорее ответ на проблему, а не ее причина. Когда интерфейс состоит из сотен элементов, которые зависят друг от друга, нужна система управления состоянием – механизм, который отслеживает, какие данные изменились и какие части интерфейса нужно обновить. Именно для этого появились React, Vue, Angular.

Они добавляют вес – да. Но без них управлять сложностью современных интерфейсов было бы почти невозможно. Ключевой фактор – рост бизнес-требований. Современный веб обслуживает миллионы пользователей, интегрируется с аналитикой и внешними API, выдерживает пиковые нагрузки. Это уже инфраструктура, а не просто сайт.

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

— Если говорить честно: насколько React, Vue или Angular утяжеляют проект?

Владислав Мещеряков: У них есть измеримая цена. Подключая фреймворк, мы загружаем не только свой код, но и его рантайм, систему реактивности, роутер и инструменты управления состоянием. В результате даже базовый «пустой» проект может весить сотни килобайт или больше. Десять лет назад это считалось большим веб-приложением.

Но важно понимать масштаб. В реальности проблемы производительности чаще возникают не из-за самого фреймворка, а из-за архитектурных решений: хранится слишком много данных в глобальном состоянии; интерфейс перерисовывается чаще, чем нужно; подключаются тяжелые сторонние библиотеки; не используется code-splitting – разделение кода на части, которые загружаются по мере необходимости; отсутствует ленивая загрузка компонентов.

В заказной разработке я видел, как проект «раздувается» из-за отсутствия архитектурной стратегии. В продуктовой разработке, где система живет годами и развивается, такие ошибки начинают дорого стоить. И не в теории – в реальных цифрах. Проще говоря, фреймворк – это инструмент. Если им пользоваться без дисциплины, он усиливает хаос.

— То есть он нужен не всегда?

Владислав Мещеряков: Конечно. Если речь о статическом сайте с несколькими формами – React может быть избыточным. Нативный JavaScript будет проще и легче. Фреймворки оправданы там, где: интерфейс живет долго и постоянно развивается; есть сложное состояние; много интерактивности; продукт регулярно масштабируется.

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

— В чем разница между SPA и SSR – и что побеждает?

Владислав Мещеряков: Если упростить: SPA – это модель, при которой браузер загружает большой JavaScript-файл и дальше обновляет интерфейс без полной перезагрузки страницы. SSR (Server-Side Rendering) – это когда сервер заранее формирует HTML, и пользователь получает уже готовую страницу.

SPA дает богатую интерактивность, но первый экран может появляться медленно – пока загрузится и выполнится весь JavaScript. SSR быстрее показывает контент, но увеличивает нагрузку на сервер и усложняет масштабирование.

В 2026 году серьезные highload-проекты почти не выбирают «или-или». Используется гибрид:

  • первый экран и критичные страницы – через SSR или SSG (предварительную генерацию);
  • сложная интерактивность и real-time-сценарии – через SPA-логику.

Решает не выбор подхода, а архитектура доставки: CDN, кэширование, code-splitting и грамотная «гидрация», когда серверный HTML «оживает». В продуктах с миллионами пользователей любые просчеты в этой архитектуре быстро становятся заметны – особенно в моменты пиковых нагрузок. Опытный разработчик думает не только о технической корректности решения, но и о том, как система поведет себя под реальной нагрузкой и пиковым трафиком.

— Многие ориентируются на Lighthouse. Почему этого недостаточно?

Владислав Мещеряков: Lighthouse – лабораторный тест, который измеряет загрузку страницы в контролируемых условиях. Но реальный пользователь живет в других условиях.

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

Сегодня я больше ориентируюсь на:

  • INP (Interaction to Next Paint) – насколько быстро интерфейс реагирует на действие пользователя;
  • стабильность в длинных сессиях;
  • отсутствие фризов и утечек памяти;
  • поведение под реальной нагрузкой.

Можно «перекрасить» отчет, но нельзя обмануть миллионы пользователей, если интерфейс начинает лагать. Хороший UX – это когда пользователь не думает о производительности вообще.

— «Веб тяжелый» – это трагедия?

Владислав Мещеряков: Скорее взросление. Мы требуем от веба того же, что от мобильных и десктопных приложений. Веб сложнее, потому что задачи сложнее. Проблема не в размере, а в отсутствии системного подхода. В высоконагруженных продуктах очень быстро понимаешь: хаос в архитектуре становится дорогим. Тяжелым веб делает не React, а отсутствие дисциплины. А дисциплина – это уже не вопрос технологий, а вопрос инженерной культуры и профессиональной зрелости разработчика.


window-new
Soft
Hard
Тренды 🔥
Rockstar вслед за Sony заявила, что в GTA VI «лучше играть на PS5» — Xbox в рекламной кампании игры практически не существует 44 мин.
В России число заражённых вирусами смартфонов подскочило на 70 % с начала года 54 мин.
Хакеры нашли способ проникать в Gmail через штатный механизм Chrome 55 мин.
Ведущий дизайнер Baldur's Gate 2 отказался делать Baldur's Gate 4, потому что испугался конкуренции с Baldur's Gate 3 2 ч.
Apple ускорила выпуск обновлений безопасности в свете растущей угрозы со стороны ИИ 3 ч.
«Не терпится ждать это семь лет»: амбициозный мод Silksoul для Hollow Knight: Silksong впечатлил фанатов первым трейлером 4 ч.
State of Decay 3 может не выйти — Undead Labs оказалась под угрозой закрытия 5 ч.
Netflix выпустит сериал по мотивам Persona — первые подробности 7 ч.
Oracle пообещала сделать управление развитием MySQL более открытым, но сообщество требует гарантий 14 ч.
В WhatsApp появились никнеймы для скрытия телефонного номера — резервирование уже доступно 14 ч.
Китайцы создали сверхпроводящую катушку для крупнейшего в мире термоядерного реактора — своего собственного 34 мин.
Crusoe инвестирует в израильские ЦОД $10 млрд 55 мин.
Представлен 240-долларовый смартфон OnePlus N6 с батареей на 8000 мА·ч, Dimensity 6360 Max и 50-Мп камерой 57 мин.
Meta научилась точнее распознавать мысленный ввод текста с клавиатуры без операций на мозге и имплантов 60 мин.
51,3 Тбит/с на 206,5 км без усилителей — китайская YOFC успешно протестировала полое оптоволокно 2 ч.
Первый ЦОД, построенный в действующей шахте, открылся в Доломитовых Альпах 2 ч.
NVIDIA Jetson поможет в ИИ-обработке данных на орбите Луны 2 ч.
GL.iNet представила первый в мире KVM для управления смартфонами Comet Q 2 ч.
Sony заявила, что не будет продавать PlayStation с большими для себя убытками 2 ч.
США оказались слишком зависимы от TSMC в технологиях передовой упаковки чипов 3 ч.