-15%Скидка 15% на разработку сайта или магазина при старте до конца месяца
Ускорение и производительность

Настройка кеширования на 1С-Битрикс без устаревших данных

Выстраиваем грамотную стратегию кеширования на 1С-Битрикс: автокеш компонентов, теги кеша и кешируемые области, managed cache, кеш меню и инфоблоков. Поднимаем hit-rate и убираем лишние сбросы — без риска показать клиенту устаревшие цены и остатки.

10 летна оптимизации Битрикс
90%+целевой hit-rate кеша
×3–6ускорение генерации страниц
0устаревших цен и остатков
CACHE HIT miss тег теги сбрасывают только нужное
Подробно об услуге

Кеширование на Битрикс: как ускорить сайт и не показать устаревшие данные

Кеширование — это сохранение однажды собранного результата, чтобы при следующих обращениях отдавать его готовым, не повторяя тяжёлую работу. На 1С-Битрикс почти каждая страница собирается из десятков компонентов: каждый из них делает запросы к базе, разбирает свойства инфоблоков, считает цены и фильтры, строит меню и хлебные крошки. Без кеша всё это пересчитывается на каждый заход посетителя, и сервер тратит силы впустую. Грамотная настройка кеширования сохраняет результат работы компонента и отдаёт его из быстрого хранилища, поэтому время генерации страницы падает в разы, а нагрузка на базу данных и PHP снижается кратно.

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

Из чего складывается кеширование на Битрикс

Платформа даёт несколько уровней кеша, и каждый закрывает свой класс задач. Автокеш компонентов сохраняет HTML и данные стандартных компонентов и сам сбрасывает их при изменении связанных сущностей через теги кеша. Кешируемые области позволяют закешировать кусок шаблона, который не входит в готовый компонент. Управляемый кеш, или managed cache, помогает хранить и инвалидировать произвольные данные, привязывая их к конкретным сущностям. Отдельно работает кеш меню и кеш результатов запросов к инфоблокам. Поверх всего этого ложится выбор быстрого хранилища кеша — файлы, Redis или Memcached — от которого зависит скорость чтения и сброса.

Главные узлы, с которыми мы работаем при настройке:

  • автокеш компонентов и его теги кеша — чтобы сброс был точечным, а не тотальным;
  • кешируемые области шаблона для блоков, которые не оформлены отдельным компонентом;
  • managed cache для произвольных данных с привязкой к инфоблокам и элементам;
  • кеш меню, хлебных крошек и других навигационных компонентов;
  • кеш выборок из инфоблоков, цен, остатков и свойств с разумным временем жизни;
  • хранилище кеша — файлы, Redis или Memcached — и его корректная настройка;
  • контроль hit-rate и борьба с лишними сбросами, которые обнуляют кеш зря.

Зачем настраивать кеширование отдельно

На большинстве проектов кеш либо выключен из страха перед устаревшими данными, либо включён вслепую и сбрасывается целиком при любом импорте из 1С. В первом случае сайт медленный и падает под нагрузкой, во втором — кеш почти не работает, потому что после каждой выгрузки остатков весь каталог пересобирается заново. Настройка кеширования решает обе крайности. Мы включаем кеш там, где он безопасен, привязываем сброс к конкретным событиям через теги, и добиваемся высокого hit-rate — доли запросов, которые отдаются из кеша без обращения к базе. Чем выше hit-rate, тем больше посетителей получают мгновенный ответ.

Особенно важна правильная стратегия для интернет-магазинов и B2B-порталов, где данные меняются часто: цены, остатки, статусы заказов, персональные условия контрагентов. Здесь нельзя кешировать всё подряд, но и без кеша каталог не выдержит нагрузки. Мы разделяем данные на устойчивые (структура каталога, описания, меню) и быстро меняющиеся (остатки, персональные цены) и кешируем их по-разному: статику — надолго и агрессивно, динамику — коротко или вообще выносим из кеша. Так страница остаётся быстрой, а клиент всегда видит актуальные цифры.

Как мы ведём настройку

Начинаем с аудита: смотрим, какие компоненты кешируются, а какие нет, как часто и по какому поводу сбрасывается кеш, какой сейчас hit-rate и где теряется время на генерации страницы. Затем выстраиваем стратегию: определяем время жизни кеша для каждого типа данных, расставляем теги, переводим тяжёлые произвольные выборки на managed cache, чиним кешируемые области и кеш меню. Параллельно ищем причины лишних сбросов — частый случай, когда агенты, импорт или сторонний модуль обнуляют весь кеш без нужды. В финале подключаем быстрое хранилище кеша, если это оправдано нагрузкой, и закрепляем результат измерениями hit-rate и времени генерации до и после.

Результат настройки кеширования на Битрикс — это сайт, который отдаёт страницы в разы быстрее, спокойнее переживает наплыв посетителей и при этом всегда показывает актуальные данные. Сервер перестаёт пересчитывать одно и то же, нагрузка на базу падает, а изменения в каталоге или ценах долетают до посетителя точечно и без задержки. Это фундамент производительности, на котором держатся и быстрая выдача, и хорошие показатели Core Web Vitals, и стабильность в пик продаж.

Как это работает

Путь запроса через слои кеша Битрикс

Запрос сначала проверяет кеш компонента: при попадании страница отдаётся мгновенно, при промахе данные собираются из базы, кешируются и помечаются тегами, чтобы сброс был точечным.

Запроспосетителя Кешкомпонента HITмгновенно MISSсбор из базы Базаданных и 1С Тегиточечный сброс Высокий hit-rate отдаёт страницы из кеша, теги сбрасывают только изменённое
Запрос → проверка кеша → HIT отдаёт готовое; MISS собирает из базы, кеширует и метит тегами.
Умный расчёт

Подберём стратегию кеша под ваш проект

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

Вопрос 1
Загрузка вопроса…

Что входит

Что входит в настройку кеширования

Выстраиваем кеш на всех уровнях Битрикс — от автокеша компонентов и тегов до managed cache и быстрого хранилища, с контролем hit-rate и актуальности данных.

Автокеш компонентов

Включаем кеш стандартных компонентов и проверяем, что он реально срабатывает, а не сбрасывается при каждом заходе.

Теги кеша

Привязываем сброс к конкретным сущностям, чтобы изменение одного товара не обнуляло кеш всего каталога.

Кешируемые области

Заворачиваем в кеш куски шаблона, которые не оформлены отдельным компонентом, без потери актуальности.

Managed cache

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

Кеш меню и инфоблоков

Настраиваем кеш меню, хлебных крошек и выборок из инфоблоков с разумным временем жизни.

Hit-rate и сбросы

Поднимаем долю попаданий в кеш и устраняем лишние сбросы от агентов, импорта и сторонних модулей.

Сравнение

Как настраивают кеш разными силами

Критерий Своими силамиФрилансерСтудия B2Bsite
Подход к настройке Включают автокеш галочкой и сбрасывают весь кеш при импортеЗакеширует пару компонентов, но без общей стратегииСтратегия кеша по типам данных: статика надолго, динамика коротко
Баланс скорости и актуальности Боятся устаревших данных, поэтому держат кеш выключеннымМожет ускорить, но баланс скорости и актуальности шаткийКеш безопасный — теги сбрасывают только изменённое
Глубина кеширования Теги и managed cache обычно не используютТеги расставляет частично, managed cache редкоАвтокеш, теги, managed cache, кеш меню и инфоблоков
Замеры и контроль Hit-rate не измеряют, причины сбросов не ищутЗамеры до и после делает не всегдаHit-rate и время генерации замеряем до и после
Риск устаревших данных Высокий риск показать клиенту старую цену или остатокРиск средний, многое зависит от конкретного человекаУстаревших цен и остатков нет — сброс точечный по событиям
Этапы

Как мы настраиваем кеширование

01

Аудит кеша

Смотрим, что кешируется, как часто сбрасывается кеш, какой hit-rate и где теряется время генерации.

02

Стратегия по данным

Делим данные на устойчивые и быстро меняющиеся и задаём время жизни кеша для каждого типа.

03

Теги и managed cache

Расставляем теги кеша и переводим тяжёлые произвольные выборки на управляемый кеш с точечным сбросом.

04

Чистка сбросов

Находим и убираем лишние сбросы от агентов, импорта и сторонних модулей, обнуляющих кеш зря.

05

Хранилище кеша

При необходимости подключаем Redis или Memcached для быстрого чтения и сброса под нагрузкой.

06

Замеры и отчёт

Фиксируем hit-rate и время генерации до и после, передаём отчёт и рекомендации по поддержке.

Сроки

Сколько занимает настройка кеширования

1–2 дня Аудит кеша, замер hit-rate и времени генерации страниц
1
2–3 дня Стратегия кеша по типам данных и расстановка тегов
2
3–5 дней Managed cache, кешируемые области, кеш меню и инфоблоков
3
1–2 дня Поиск и устранение лишних сбросов кеша
4
1–2 дня Подключение Redis или Memcached при необходимости
5
1 день Контрольные замеры, отчёт и рекомендации
6
Тарифы

Сколько стоит настройка кеширования

Стоимость зависит от размера проекта, числа компонентов и сложности данных. Ниже — ориентиры; точную смету присылаем после бесплатного экспресс-аудита кеша.

Экспресс-кеш
от 25 000 ₽
Срок: 2–3 дня

Базовая настройка автокеша и тегов для типового сайта на Битрикс.

  • Аудит текущего кеша
  • Включение автокеша компонентов
  • Базовые теги кеша
  • Замер hit-rate до и после
Популярный выбор
Стратегия кеша
от 60 000 ₽
Срок: 5–8 дней

Полная настройка кеша по типам данных для каталога или B2B-портала.

  • Стратегия по устойчивым и динамическим данным
  • Теги кеша и managed cache
  • Кеш меню и инфоблоков
  • Устранение лишних сбросов
  • Отчёт с замерами
Кеш под нагрузку
от 120 000 ₽
Срок: от 10 дней

Кеширование для высоконагруженного проекта с Redis или Memcached.

  • Всё из «Стратегия кеша»
  • Подключение Redis или Memcached
  • Кеш под пиковую нагрузку
  • Оптимизация выборок инфоблоков
  • Сопровождение и контроль hit-rate
Экспресс-кеш от 25 000 ₽
Срок: 2–3 дня

Базовая настройка автокеша и тегов для типового сайта на Битрикс.

  • Аудит текущего кеша
  • Включение автокеша компонентов
  • Базовые теги кеша
  • Замер hit-rate до и после
Популярный Стратегия кеша от 60 000 ₽
Срок: 5–8 дней

Полная настройка кеша по типам данных для каталога или B2B-портала.

  • Стратегия по устойчивым и динамическим данным
  • Теги кеша и managed cache
  • Кеш меню и инфоблоков
  • Устранение лишних сбросов
  • Отчёт с замерами
Кеш под нагрузку от 120 000 ₽
Срок: от 10 дней

Кеширование для высоконагруженного проекта с Redis или Memcached.

  • Всё из «Стратегия кеша»
  • Подключение Redis или Memcached
  • Кеш под пиковую нагрузку
  • Оптимизация выборок инфоблоков
  • Сопровождение и контроль hit-rate

Дополнительные опции

Подключение Redis или Memcached от 20 000 ₽
Настройка композитного сайта от 30 000 ₽
Мониторинг hit-rate и времени генерации от 15 000 ₽
Расчёт выгоды

Сколько ресурсов сервера экономит кеш

Прикиньте, сколько серверного времени экономит грамотный кеш, когда большая часть страниц отдаётся из кеша без тяжёлого сбора из базы. Чем выше hit-rate, тем меньше реальной работы делает сервер.

Экономия серверного времени в месяц, секунд 0 ₽

Оценка по формуле: просмотры × hit-rate в процентах × время генерации без кеша. Это ориентир сэкономленного серверного времени, а не гарантия.

Примеры работ

Кейсы по настройке кеширования

Интернет-магазин

Кеш каталога без устаревших остатков

Разделили статику и динамику, привязали сброс к тегам — каталог стал быстрым, а остатки остались актуальными.

92%Hit-rate
−70%Время генерации
6 днейСрок
B2B-портал

Managed cache для персональных цен

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

−60%Нагрузка на базу
устраненыЛишние сбросы
8 днейСрок
Контентный портал

Кеш меню и инфоблоков под нагрузкой

Настроили кеш меню, выборок инфоблоков и подключили Redis — сайт выдержал наплыв трафика в пик.

95%Hit-rate
−75%Время генерации
10 днейСрок
Отзывы клиентов

Что говорят после настройки кеша

«Раньше боялись включать кеш — постоянно ловили старые цены. Команда выстроила стратегию с тегами, теперь сайт быстрый, а остатки и цены всегда актуальные.»

Алексей К. Руководитель интернет-магазина

«Наш B2B-портал тормозил из-за персональных цен. Перевели выборки на managed cache, нагрузка на базу упала больше чем вдвое. Видно, что люди понимают именно Битрикс.»

Марина С. IT-директор дистрибуции

«Кеш сбрасывался целиком при каждом импорте, и от него не было толку. Нашли причину, починили теги — hit-rate вырос с 40 до 90 процентов, сервер вздохнул свободнее.»

Дмитрий П. Технический директор портала
База знаний

Частые вопросы о кешировании — и наш ответ

Это не общие советы из интернета, а закономерности из реальных проектов на Битрикс. Каждый ответ — позиция нашей команды.

Сбросы

Кеш сбрасывается целиком при каждом импорте из 1С

Наш ответ

Это самая частая причина бесполезного кеша. Привязываем сброс к тегам конкретных элементов, чтобы изменение остатка одного товара не обнуляло кеш всего каталога. После этого hit-rate резко растёт, а данные остаются актуальными.

Актуальность

Боимся включать кеш, чтобы клиент не увидел старую цену

Наш ответ

Делим данные на устойчивые и быстро меняющиеся. Структуру каталога, описания и меню кешируем надолго, а цены и остатки — коротко или через теги с точечным сбросом по событиям. Так страница быстрая, а цифры свежие.

Hit-rate

Не понимаем, работает кеш или нет

Наш ответ

Измеряем hit-rate — долю запросов, отданных из кеша без обращения к базе, и время генерации страницы. Замеры делаем до и после настройки, поэтому эффект виден в конкретных цифрах, а не на словах.

Хранилище

Стоит ли подключать Redis или Memcached

Наш ответ

Зависит от нагрузки. На небольших сайтах хватает файлового кеша. Под высокой нагрузкой Redis или Memcached ускоряют чтение и сброс кеша и снимают нагрузку с диска. Решаем по фактическим показателям, а не по моде.

Почему мы

На что можно рассчитывать по договору

Баланс скорости и актуальности

Кешируем безопасно: статику надолго, динамику коротко — устаревших цен и остатков нет.

Глубокое знание Битрикс

Работаем со всеми слоями кеша: автокеш, теги, managed cache, кеш меню и инфоблоков.

Замеры до и после

Фиксируем hit-rate и время генерации страниц, чтобы результат был виден в цифрах.

Точечный сброс

Теги и события сбрасывают только изменённое, а не весь кеш каталога при импорте.

Экспертный взгляд

Грамотная стратегия кеша против устаревших данных

Кеширование на 1С-Битрикс — это область, где легко сделать хуже, чем было. Включишь кеш слишком агрессивно — клиент увидит вчерашние цены и распроданный товар как доступный. Побоишься и оставишь кеш выключенным — сайт будет тормозить и падать под нагрузкой. Поэтому настоящая задача не в том, чтобы включить или выключить кеш, а в том, чтобы выстроить стратегию: разобрать, какие данные на сайте устойчивые, а какие меняются каждый час, и кешировать их по-разному. Ниже разберём, как мы подходим к этой задаче, какие ошибки встречаются чаще всего и почему грамотная настройка кеша окупается быстрее почти любой другой оптимизации.

Почему кеш на Битрикс так часто работает вхолостую

На большинстве проектов кеш формально включён, но реального толку от него мало. Типичная картина: автокеш компонентов стоит галочкой, но при каждой выгрузке остатков из 1С весь кеш сайта сбрасывается целиком. В итоге после импорта первый же посетитель заставляет сервер пересобирать весь каталог заново, кеш не успевает прогреться, а hit-rate болтается на уровне сорока-пятидесяти процентов. Сайт вроде бы с кешем, а ведёт себя как без него. Виноваты не сами компоненты, а отсутствие стратегии: никто не разделил данные по скорости изменения и не привязал сброс к конкретным событиям.

Вторая частая причина — лишние сбросы. Сторонний модуль, неаккуратный агент или обработчик события может вызывать полную очистку кеша там, где достаточно было сбросить один тег. Такие сбросы незаметны на глаз, но убивают всю выгоду от кеширования. Мы регулярно находим на проектах места, где кеш обнуляется по десять раз в час без всякой нужды, и одно только устранение этих сбросов поднимает hit-rate в полтора-два раза без какой-либо другой работы.

Стратегия по типам данных — основа безопасного кеша

Ключ к кешу без устаревших данных — разделение информации на классы по скорости изменения. Структура каталога, тексты страниц, описания товаров, меню и хлебные крошки меняются редко: их можно кешировать надолго и агрессивно, потому что риск показать устаревшее минимален. Цены, остатки, статусы заказов и персональные условия меняются часто: их кешируют коротко, через теги с точечным сбросом, а иногда выносят из кеша целиком или отдают через композитный режим. Когда данные разложены по этим классам, можно одновременно держать высокий hit-rate на статике и мгновенную актуальность на динамике. Если у вас есть быстро меняющиеся блоки, которые тяжело собираются, их часто стоит вынести на отдельный быстрый рендер — здесь хорошо помогает настройка композитного сайта на Битрикс, когда статичная часть страницы отдаётся мгновенно, а динамика подгружается отдельным запросом.

Именно на этом разделении строится баланс между скоростью и актуальностью. Мы не пытаемся закешировать всё подряд и не отказываемся от кеша из страха. Вместо этого для каждого типа данных подбираем своё время жизни и свой механизм сброса. Описание товара живёт в кеше сутки, остаток — до ближайшего изменения через тег, персональная цена контрагента — через managed cache с инвалидацией по событию из 1С. Такой раскладке нельзя научиться по галочкам в админке: она требует понимания и данных, и платформы.

Теги кеша и managed cache: точечный сброс вместо тотального

Теги кеша — это механизм, который позволяет пометить закешированные данные ярлыком конкретной сущности и сбрасывать только то, что реально изменилось. Когда у элемента инфоблока меняется свойство, сбрасывается кеш только тех страниц, которые этот элемент используют, а не весь каталог. Правильная расстановка тегов — это то, что превращает формальный кеш в работающий. Без тегов любое изменение тянет за собой тотальный сброс, и кеш не успевает приносить пользу. С тегами сброс становится хирургическим, и hit-rate держится высоким даже при частых обновлениях.

Managed cache, или управляемый кеш, решает задачу там, где готовых компонентов нет. Тяжёлые произвольные выборки — например, расчёт персональных цен для контрагента или сложный фильтр по нескольким инфоблокам — мы оборачиваем в управляемый кеш и привязываем к сущностям, при изменении которых результат становится недействительным. Так даже нестандартная бизнес-логика, которой особенно много на B2B-проектах, перестаёт пересчитываться на каждый запрос. Если ваш проект — это оптовая платформа с персональными ценами, грамотный managed cache часто даёт больше, чем любой другой вид кеширования, и хорошо сочетается с общей настройкой кеширования остальных частей сайта.

Кешируемые области, кеш меню и выборок инфоблоков

Не всё на странице оформлено готовым компонентом. Часто в шаблоне встречаются куски кода, которые делают свои запросы напрямую: блок акций, подборка рекомендаций, виджет в подвале. Такие участки заворачиваются в кешируемые области — конструкцию, которая сохраняет результат работы куска шаблона и отдаёт его готовым. Это снимает скрытую нагрузку, которую не видно за фасадом красиво закешированных компонентов. Отдельно настраиваем кеш меню и хлебных крошек: эти компоненты вызываются на каждой странице, и без кеша они дают заметный вклад в общее время генерации.

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

Хранилище кеша: файлы, Redis или Memcached

Где физически лежит кеш — тоже часть стратегии. По умолчанию Битрикс хранит кеш в файлах, и для небольших и средних сайтов этого достаточно. Но под высокой нагрузкой файловый кеш упирается в скорость диска: тысячи мелких операций чтения и сброса начинают тормозить, особенно при большом числе тегов. В этом случае мы подключаем Redis или Memcached — хранилища кеша в оперативной памяти, которые читают и сбрасывают данные на порядок быстрее. Это снимает нагрузку с диска и делает сброс по тегам почти мгновенным.

При этом мы не подключаем Redis ради галочки. Сначала смотрим на фактические показатели: размер кеша, частоту сбросов, нагрузку на диск. Если файловый кеш справляется, лишний слой инфраструктуры только усложняет поддержку. Если же проект высоконагруженный, быстрое хранилище становится обязательным. Подбор и настройка хранилища — отдельная работа, которую мы детально разбираем в услуге настройка Redis и Memcached для Битрикс, и она логично продолжает настройку самой стратегии кеша.

Hit-rate как мера качества кеша

Главный показатель, по которому мы судим о качестве настройки, — hit-rate, доля запросов, которые отдаются из кеша без обращения к базе. Если hit-rate низкий, значит кеш не работает: его сбрасывают слишком часто, не успевают прогреть или вовсе не кешируют нужные участки. Высокий hit-rate означает, что большинство посетителей получают готовый ответ мгновенно, а сервер делает реальную работу лишь для меньшинства запросов. Мы измеряем hit-rate и время генерации страницы до начала работ и после, поэтому эффект всегда виден в конкретных цифрах, а не в обещаниях.

Замеры — это ещё и защита от иллюзий. Бывает, что кеш формально включён и сайт кажется быстрым, но при ближайшем рассмотрении hit-rate низкий, а скорость держится на запасе мощного сервера. Стоит вырасти трафику — и всё проседает. Поэтому мы не доверяем ощущениям, а опираемся на измерения: они показывают и текущее состояние, и реальный прирост после настройки. Кеширование тесно связано с общей производительностью, и наша работа здесь — часть более широкого направления ускорения сайтов на Битрикс, куда входят и оптимизация запросов, и работа с фронтендом.

Типичные ошибки, которые мы исправляем

Самая частая ошибка — полный сброс кеша при импорте из 1С. Её исправление через теги почти всегда даёт самый заметный эффект. Вторая ошибка — кеширование данных, которые меняются слишком часто, без механизма сброса: тогда клиент видит устаревшее. Третья — наоборот, отказ от кеша на устойчивых данных из общего страха, хотя структура каталога или меню спокойно живут в кеше сутками. Четвёртая — лишние сбросы от сторонних модулей и агентов, которые обнуляют кеш без нужды. Пятая — игнорирование кешируемых областей и кеша меню, из-за чего на каждой странице остаётся скрытая нагрузка.

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

Кеш и обновления Битрикс

Отдельный вопрос — как настройка кеша переживает обновления платформы и доработки сайта. Мы стараемся не править ядро и работать через штатные механизмы: теги, managed cache, кешируемые области и настройки компонентов. Логику инвалидации выносим в обработчики событий, а не в случайные места кода. Благодаря этому обновления Битрикс проходят без конфликтов, а новые компоненты и доработки естественно вписываются в уже выстроенную стратегию кеша. Это снижает стоимость поддержки и не даёт настройке деградировать со временем.

Мы также оставляем понятную документацию: что и как кешируется, по каким событиям сбрасывается, где лежит хранилище кеша и как измерять hit-rate. Это важно, чтобы ваша команда могла развивать сайт дальше, не ломая кеш случайными изменениями. Хорошая стратегия кеширования — это не разовая настройка, а правила, по которым проект живёт и растёт.

С чего начать

Начните с бесплатного экспресс-аудита кеша. Мы посмотрим, что кешируется на вашем сайте, как часто и по каким причинам сбрасывается кеш, какой сейчас hit-rate и время генерации страниц. По итогам дадим честную картину: где теряется скорость, какие сбросы лишние, что кешировать в первую очередь и какой прирост это даст. Если окажется, что для ускорения достаточно навести порядок в тегах и сбросах, мы так и скажем — а не будем продавать тяжёлую инфраструктуру там, где она не нужна. Расскажите о вашем проекте, нагрузке и частоте обновления данных, и мы предложим стратегию кеша под вашу задачу, с понятными сроками и сметой.

Вопросы и ответы

Частые вопросы о настройке кеширования

Что такое кеширование простыми словами? +

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

Что такое hit-rate кеша? +

Hit-rate — это доля запросов, которые отдаются из кеша без обращения к базе данных. Если из ста запросов девяносто получили готовый ответ из кеша, hit-rate равен 90 процентам. Чем он выше, тем больше посетителей получают мгновенный ответ и тем меньше реальной работы делает сервер.

Что такое автокеш компонентов? +

Автокеш — это режим, в котором стандартный компонент Битрикс сам сохраняет свой результат и сам сбрасывает его при изменении связанных данных через теги кеша. Это базовый и самый простой уровень кеширования: его нужно правильно включить и убедиться, что он реально срабатывает, а не сбрасывается зря.

Зачем настраивать кеш отдельно, если он уже есть в Битрикс? +

Кеш в Битрикс есть, но по умолчанию он часто работает вхолостую: включён галочкой, но сбрасывается целиком при каждом импорте и не привязан к событиям. Настройка превращает формальный кеш в работающий — с высоким hit-rate, точечным сбросом и без устаревших данных.

Кому нужна настройка кеширования? +

Прежде всего интернет-магазинам, B2B-порталам и контентным проектам, где много компонентов, частые обновления данных и заметный трафик. Чем тяжелее собирается страница и чем больше посетителей, тем сильнее эффект от грамотного кеша. Небольшим сайтам базовой настройки тоже хватает с запасом.

Не покажет ли кеш клиенту устаревшие цены и остатки? +

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

Как кеш узнаёт, что данные изменились? +

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

Что делать с персональными ценами контрагентов? +

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

Можно ли кешировать корзину и личный кабинет? +

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

Как часто нужно сбрасывать кеш? +

Хороший кеш почти не нужно сбрасывать вручную — он сбрасывается сам по событиям через теги. Ручной полный сброс — это крайняя мера, после которой сайт временно работает медленнее, пока кеш заново прогревается. Если кеш приходится часто сбрасывать руками, значит стратегия настроена неверно.

Чем managed cache отличается от автокеша? +

Автокеш работает внутри готовых компонентов и кеширует их результат. Managed cache, или управляемый кеш, нужен там, где готового компонента нет: тяжёлые произвольные выборки, сложные расчёты, нестандартная логика. Его привязывают к сущностям и сбрасывают точечно при их изменении.

Что такое кешируемые области? +

Это конструкция, которая позволяет закешировать кусок шаблона, не оформленный отдельным компонентом — например, блок акций или виджет в подвале, делающий свои запросы. Кешируемая область сохраняет результат работы этого куска и отдаёт его готовым, снимая скрытую нагрузку со страницы.

Нужно ли подключать Redis или Memcached? +

Зависит от нагрузки. На небольших и средних сайтах файлового кеша достаточно. Под высокой нагрузкой файловый кеш упирается в скорость диска, и тогда Redis или Memcached — хранилища кеша в оперативной памяти — ускоряют чтение и сброс. Решаем по фактическим показателям, а не по моде.

Как настраивается кеш меню и инфоблоков? +

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

Что такое композитный сайт и как он связан с кешем? +

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

Почему кеш сбрасывается при каждом импорте из 1С? +

Чаще всего потому, что импорт настроен на полную очистку кеша вместо точечного сброса по тегам. Это убивает всю пользу: после выгрузки сайт заново пересобирает весь каталог. Мы привязываем сброс к тегам изменённых элементов, и кеш перестаёт обнуляться целиком.

Откуда берутся лишние сбросы кеша? +

Их вызывают сторонние модули, неаккуратные агенты или обработчики событий, которые очищают весь кеш там, где хватило бы одного тега. Такие сбросы незаметны на глаз, но роняют hit-rate. На аудите мы их находим и устраняем — нередко это даёт прирост без какой-либо другой работы.

Как поднять hit-rate кеша? +

Через расстановку тегов вместо тотальных сбросов, устранение лишних сбросов от модулей и агентов, кеширование устойчивых данных надолго и прогрев кеша после обновлений. Каждый из этих шагов поднимает долю попаданий в кеш, а вместе они выводят hit-rate на 90 процентов и выше.

Как вы измеряете эффект от настройки? +

Замеряем hit-rate и время генерации страницы до начала работ и после. Эти цифры показывают и текущее состояние кеша, и реальный прирост. Мы не доверяем ощущениям скорости, потому что сайт может казаться быстрым за счёт запаса мощного сервера, а не за счёт кеша.

Может ли кеш скрывать неэффективный код? +

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

Сколько стоит настройка кеширования? +

Базовая настройка автокеша и тегов для типового сайта начинается от 25 000 рублей, полная стратегия кеша для каталога или B2B-портала — от 60 000. Цена зависит от размера проекта, числа компонентов и сложности данных. Точную смету присылаем после бесплатного экспресс-аудита.

За какой срок реально настроить кеш? +

Базовую настройку делаем за 2–3 дня, полную стратегию кеша — за 5–8 дней, кеширование под высокую нагрузку с подключением Redis — от 10 дней. Точный срок зависит от размера проекта и сложности данных и фиксируется в смете до старта работ.

Нужно ли останавливать сайт на время настройки? +

Нет. Настройка кеша ведётся без остановки сайта: изменения вносятся аккуратно, проверяются на актуальность данных и применяются постепенно. В отдельных случаях работаем на копии и переносим проверенные настройки на боевой сайт, чтобы исключить риски.

Что я получу по итогу работ? +

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

Поможет ли кеш с Core Web Vitals и SEO? +

Косвенно да. Кеш ускоряет генерацию страницы на сервере, а это улучшает время до первого байта и общую отзывчивость сайта — факторы, которые влияют и на Core Web Vitals, и на поведение посетителей. Кеширование — это фундамент, на котором держится остальная оптимизация скорости.

Начать проект

Настроим кеш на вашем Битрикс?

Расскажите о вашем сайте, нагрузке и частоте обновления данных — проведём экспресс-аудит кеша бесплатно и предложим стратегию с понятными сроками и сметой.

  • Ответим в течение рабочего дня
  • Бесплатный аудит процессов и расчёт
  • NDA и фиксированная смета