Кейсы онлайн

EconomDoors: ускорили интернет-магазин дверей с 42 секунд до 0,8 секунды

EconomDoors: ускорили интернет-магазин дверей с 42 секунд до 0,8 секунды

Что делать, если интернет-магазин дверей «уже ускоряли», а человек всё равно ждёт экран десятки секунд? У EconomDoors сначала ускорили ответ сервера: статичный sitemap, HTML-кэш страниц, быстрее категории. Потом замер в браузере показал другое: HTML приходил за доли секунды, а window.load на карточке держался около 42 секунд. За два дня закрыли сервер, фронт, сюрприз с корзиной гостя, вспышку плашек в каталоге и прогрели 176 страниц без товарных карточек. Цифры — с боевого сайта в сентябре 2026. Это не отчёт про рост трафика и не CPA.

Ниже — таблица замеров, затем категории, карточка и раздел статей целиком. Почему тяжёлый первый экран бьёт по заявкам — в статье про скорость сайта. Почему после правки цены клиент видит вчерашнее — в материале про кэш и старый прайс.

Сюжет в цифрах: сервер уже быстрый, браузер — нет

Первый слой — ответ сервера. Главная с ~3,5 с ушла в ~0,09 с на HIT. Категория с ~7 с — в ~0,11 с. Раздел статей — то же. sitemap.xml перестал генериться на лету по ~16–18 с: отдаётся готовый файл. Этого хватило бы для отчёта «мы внедрили кэш». Но карточка товара в браузере с отключённым кэшем всё ещё собиралась кусками: FCP мог тянуться секунды, DOMContentLoaded — около 12 с, window.load — около 42 с.

Замерыоригинал
Таблица было/стало: карточка товара load 42 с → 0,8 с и категории HIT около 0,1 с.
Замеры Агентуры, сентябрь 2026оригинал

Срез наших замеров на боевом сайте, 14–15 сентября 2026. Живые цифры завтра изменятся — этот кадр останется.

Сначала сервер: карта сайта, HTML-кэш, лимит товаров

Карту сайта вынесли в статический файл и ночную пересборку: поисковик и люди не ждут генерацию с ресайзом картинок. HTML-кэш страниц кладёт готовую разметку на час и отвечает заголовком HIT или MISS. Корзину, оформление, личный кабинет, поиск и ajax не кэшируем. В категориях уменьшили лимит товаров на странице: HTML стал легче, холодный рендер короче. Cold категории всё ещё тяжёлый на хостинге — поэтому HIT и прогрев важнее «ещё одного тюнинга SQL ночью».

Потом фронт: кэш HTML уже не узкое место

В head маркетинг и виджеты стартовали сразу: Метрика с вебвизором, GTM, Roistat, Marquiz и ещё несколько скриптов. На карточке отдельно торчал sync-скрипт шаринга и держал парсер около 11 с. Шаблон карточки жил не там, куда смотрели сначала: правки «обычного» product.twig на выдачу не попадали. Сделали иначе: критичный CSS раньше JS, маркетинг после первой отрисовки, тяжёлые сторонние скрипты с задержкой. После этого FCP и DOMContentLoaded около 0,6 с, window.load около 0,8 с.

Карточкаоригинал
Полная карточка товара EconomDoors: фото двери, цена, кнопка купить и блок преимуществ.
Боевой сайт, сентябрь 2026оригинал

Карточка входной двери на боевом сайте после правок, сентябрь 2026.

Кэш не должен обнулять корзину гостя

После ускорения HTML всплыл бытовой баг: «Купить» работал, а счётчик корзины после обновления страницы снова показывал ноль. У гостя OpenCart держит корзину в таблице, а не только в массиве сессии. Кэш смотрел не туда и мог отдать HIT с чужим нулём. Поправили порядок: сессия стартует до проверки HIT, наличие товаров в корзине читается из базы по сессии. Скорость осталась, счётчик — тоже.

ПравилоHTML-кэш магазина безопасен только если знает про гостевую корзину, избранное и сравнение. Иначе выигрыш в TTFB покупается потерей доверия у человека с уже выбранной дверью.

Каталог: плашки не должны вспыхивать на всю ширину

На категории входных дверей при загрузке сначала на всю ширину вспыхивали крупные плашки преимуществ, потом JavaScript перетаскивал их в сайдбар. Для человека это выглядело как «сайт ещё не собрался». Переложили вставку в шаблон и спрятали блок CSS, пока он не на своём месте. Ниже — категория межкомнатных после правок: сетка и фильтры без вспышки чужого макета.

Категорияоригинал
Полная страница категории межкомнатных дверей: фильтры, теги и сетка карточек.
Боевой сайт, сентябрь 2026оригинал

Категория межкомнатных дверей целиком, сентябрь 2026.

Прогрели категории, статьи и основные страницы — без товаров

Cold категории на shared-хостинге всё ещё может занять несколько секунд. Поэтому после правок прогрели кэш заранее: главная, 62 категории, 6 информационных, листинг и рубрики блога, 43 статьи, бренды. Товары сознательно не трогали — их слишком много, а выигрыш от HIT на карточке уже есть после первого визита. Итого 176 URL: 146 MISS стали HIT, 13 уже были HIT, 17 — редиректы без кэша. Ошибок не было.

Статьиоригинал
Полная страница раздела статей EconomDoors с рубриками и карточками материалов.
Боевой сайт, сентябрь 2026оригинал

Раздел статей «Путеводитель по миру дверей» после прогрева, сентябрь 2026.

Что это не закрывает

Не обещаем рост позиций и заявок только от HIT. Cold категории на текущем хостинге всё ещё профилировать. Товарные URL массово не прогревали. Кэш нужно сбрасывать осознанно после правок контента — иначе человек увидит вчерашнюю витрину. Как устроены слои кэша и зачем сброс после прайса — в статье про старую цену в кэше. Про посадочную под рекламу — в скорости посадочной.

Частые вопросы

Почему кэша HTML оказалось мало?

HTML приходил быстро, а браузер всё равно ждал маркетинг и sync-скрипты в head и на карточке. Пока они не отложены, window.load остаётся десятки секунд.

Что за 42 секунды на карточке?

Замер в браузере с отключённым кэшем на боевой карточке: до правок window.load около 42 с. После отложенного маркетинга и скриптов — около 0,8 с.

Почему не прогревали товары?

Их много, а HIT на карточке появляется после первого визита. Прогрели то, что открывают часто и что дорого считать cold: категории, статьи, инфостраницы, бренды.

Корзина после кэша не ломается?

Гостевая корзина в OpenCart живёт в базе. Кэш читает её до HIT и не отдаёт страницу с чужим нулём в счётчике.

Это уже на боевом сайте?

Да. Кадры и цифры — с боевого econom-doors.ru, сентябрь 2026. Это снимок этапа, не обещание, что страница навсегда останется такой.

Можно ли так же на другом OpenCart-магазине?

Да, если сначала измерить сервер и браузер отдельно. Часто «медленный сайт» — это не один тюнинг, а кэш + head + исключения корзины + прогрев каталога.

← Назад к разделу «Кейсы онлайн»