Тот же магазин статикой: 544 мс против 5 мс на промахе кэша

544 мс → 5 мс TTFB на промахе кэша

headless.devs-code.site
Тот же магазин статикой: 544 мс против 5 мс на промахе кэша

Магазин мебели с соседнего стенда на WooCommerce, пересобранный статической витриной на Astro 5. Тот же каталог, те же цены, те же заказы: 421 товар на язык приезжает из WooCommerce Store API и раскладывается в 983 HTML-файла, которые nginx отдаёт без PHP, Node и базы в запросе. Обе витрины дают 100 в мобильном Lighthouse, и утверждать обратное было бы неправдой — тема магазина сделана хорошо. Разница в том, чего этот балл стоит. При попадании в микрокэш WordPress отвечает за 2 мс, быстрее нас. При промахе он собирает страницу 544 мс, а кэш обязан когда-то промахнуться: после правки товара, по истечении срока, при первом заходе на редкую страницу. Статике промахиваться нечем — адрес, который ещё никто не спрашивал, приходит за те же 5 мс, потому что собирать нечего. Документ 4.3 КБ против 12.7 КБ, JavaScript 6 КБ против 13 КБ. Корзина настоящая: она живёт в магазине через Cart-Token, и заказ, оформленный здесь, появляется в админке WooCommerce соседнего стенда вместе с живыми тарифами Новой Почты. Журнал сборок на /builds/ показывает каждую пересборку — какие товары изменились и сколько файлов переписано, обычно 18 из 1428: выкладка делает жёсткие ссылки на прошлый релиз и трогает только отличия. Чего стенд не делает: деньги не движутся, изображения товаров — чертежи, сгенерированные из габаритов, а не фотографии, а каталог догоняет шестичасовой сброс соседнего магазина за 5 минут.

  • Нажмите кнопку — ваш браузер сам замерит обе витрины на одном товаре
  • 544 мс против 5 мс до первого байта на промахе кэша — вот где настоящая разница
  • Заказ со статической витрины приходит в админку WooCommerce соседнего стенда
  • Публичный журнал сборок: что изменилось, что переписано, сколько это заняло
  • Меняете одну цену — пересобираются 11 файлов из 1428: товар, его списки, его соседи
  • Украинская страница тянет 95 КБ шрифтов вместо 170 КБ, шестью файлами вместо девяти

Похожие работы

Магазины Живой

Магазин мебели + конструктор: собери своё, увидь смету, закажи

420 товаров · заказ → TG-уведомление

Магазин на WooCommerce, 420 товаров, где настоящие ширина и высота нарисованы прямо на изображении выносными линиями, как в чертеже цеха: мебель возвращают не потому, что…

WordPressWooCommercePython
Магазины Живой

Тот же магазин на втором движке: один дизайн на WooCommerce и OpenCart

Тот же магазин мебели, что на соседнем стенде WooCommerce — тот же макет, тот же фид на 420 товаров, та же структура каталога, те же тексты — собранный заново на OpenCart 4.1.

Скорость и аудит Живой

Один дизайн — четыре платформы: измерено, а не рассказано

4 живых движка · ночной Lighthouse

Один каталог мебели на 420 моделей и одна вёрстка на четырёх движках: WooCommerce, OpenCart 4, headless-фронт на Astro поверх REST API WordPress и чистый WordPress без магазина.

WordPressWooCommerceOpenCart