Главная / База знаний / Скорость сайта

Методы кэширования сайта: обзор подходов и их эффект на скорость

6 мин чтения обновлено 19 августа 2026 Скорость сайта

Коротко. Методов кэширования сайта шесть основных: браузерный, серверный (page cache), объектный (Redis/Memcached), кэш опкода (OPcache), кэш запросов к базе данных и CDN. Самый весомый по эффекту — серверный page cache, обычно сокращает время ответа сервера в 3-10 раз. Объектный кэш и Redis нужны не всем — оправданы при высокой нагрузке или сложных выборках, для сайта с несколькими тысячами визитов в месяц это избыточно. Разумный порядок внедрения: page cache, OPcache, браузерный кэш, дальше — по необходимости.

Шесть методов и что каждый из них кэширует

Кэширование сайта — не один метод, а набор из нескольких независимых механизмов, каждый со своей зоной ответственности. Браузерный кэш хранит статику на устройстве посетителя. Серверный кэш страниц (page cache) хранит готовый HTML-документ. Кэш опкода (OPcache) хранит скомпилированный PHP-код. Объектный кэш (Redis, Memcached) хранит промежуточные данные приложения — например, результат сложной выборки, который используется на нескольких страницах. Кэш запросов к базе данных хранит результаты конкретных SQL-запросов. CDN хранит копии статики на серверах, географически близких к посетителю. Разница между этими методами — не только в том, что они кэшируют, но и в том, насколько заметен эффект и насколько сложно их внедрить.

Page cache — метод с самым заметным эффектом

Кэш страниц перехватывает запрос до того, как он доходит до движка CMS, и отдаёт готовый HTML-файл напрямую с диска или из памяти. Это даёт основной прирост скорости, потому что убирает всю цепочку «PHP → база данных → сборка HTML» для уже закэшированной страницы. Типичный эффект — сокращение TTFB (время ответа сервера) с 500-1500 мс до 50-150 мс. Внедрение на популярных CMS обычно не требует программирования — есть готовые плагины (WordPress) или встроенные механизмы (Bitrix, LiteSpeed Cache на уровне хостинга). Ограничение метода — необходимость исключений для персонализированных страниц: корзина, личный кабинет, страницы с формами. Без правильных исключений метод не просто не работает, а может показывать одному посетителю данные другого.

OPcache — метод, который часто уже включён, но недонастроен

OPcache — встроенный в PHP механизм, сохраняющий скомпилированный байт-код скриптов в памяти, чтобы не разбирать PHP-файлы заново при каждом запросе. Он включён по умолчанию почти на всех современных хостингах, поэтому «внедрять» его обычно не нужно — нужно проверить и донастроить лимит памяти. Значение по умолчанию (часто 128 МБ) может не хватать сайту с большим количеством плагинов и модулей, из-за чего кэш постоянно перезаписывается и не даёт эффекта. Эффект от правильной настройки — не всегда заметен по TTFB напрямую, но снижает нагрузку на процессор сервера, что особенно важно при одновременных заходах нескольких посетителей.

Объектный кэш и Redis/Memcached — метод для нагруженных проектов

Объектный кэш хранит в оперативной памяти результаты дорогих операций — например, подсчёт количества товаров в категории с фильтрами, который иначе выполнялся бы заново при каждом заходе. Redis и Memcached — конкретные технологии хранения такого кэша. Метод оправдан там, где page cache недостаточно: сайты с большим количеством динамических, персонализированных или часто меняющихся данных (маркетплейсы, сервисы с личным кабинетом на каждой странице, сайты с высокой посещаемостью). Для сайта с посещаемостью в несколько тысяч визитов в месяц и стандартным каталогом внедрение Redis обычно избыточно — сложность настройки и дополнительная нагрузка на администрирование сервера (это уже зона технической поддержки) не окупаются заметным приростом скорости, которого и так добивается page cache.

Браузерный кэш и CDN — методы для повторных визитов и географии

Браузерный кэш управляется заголовками Cache-Control и работает только при повторном посещении сайта тем же браузером — для сайтов с высокой частотой возврата (интернет-магазины, сервисы) эффект ощутим, для одноразовых рекламных лендингов — минимален. CDN кэширует статику на распределённой сети серверов и даёт эффект пропорционально расстоянию между сервером сайта и аудиторией: для локальной аудитории в одном регионе с сервером — единицы миллисекунд разницы, для распределённой по стране или миру аудитории — заметное ускорение доставки. Оба метода дешёвы и просты во внедрении по сравнению с объектным кэшем, но не решают проблему медленной сборки HTML — это задача page cache.

Сравнение методов по эффекту и сложности

Метод Что кэширует Типичный эффект Сложность внедрения
Page cache (сервер) Готовый HTML-документ TTFB в 3-10 раз быстрее Низкая — готовые плагины
OPcache Скомпилированный PHP-код Снижение нагрузки на CPU Низкая — донастройка лимита
Браузерный кэш Статика (картинки, CSS, JS) Экономия при повторных визитах Низкая — заголовки сервера
CDN Статика на удалённых серверах Зависит от географии аудитории Средняя — подключение сервиса
Объектный кэш (Redis) Промежуточные данные приложения Заметен при высокой нагрузке Высокая — нужен отдельный сервис
Кэш запросов к БД Результаты конкретных SQL-запросов Разгружает базу данных Высокая — обычно часть объектного кэша

В каком порядке внедрять методы

Для подавляющего большинства сайтов на CMS порядок такой: сначала page cache — он даёт основной и самый заметный эффект при наименьших усилиях. Затем проверка и донастройка OPcache — почти бесплатно по времени, поскольку механизм обычно уже включён. Дальше — заголовки браузерного кэша для статики. CDN подключают, если аудитория географически распределена или бывают резкие всплески трафика. Объектный кэш и кэш запросов к базе данных — методы последней очереди, оправданные только когда первые четыре уже настроены, а сайт всё равно испытывает нагрузку: например, интернет-магазин с десятками тысяч товаров и сложной фильтрацией. Внедрять Redis до того, как настроен page cache, — почти всегда трата ресурсов не по приоритету. Полный разбор, какие методы уже работают на конкретном сайте, — часть SEO-аудита, а внедрение недостающих уровней — обычная задача при разработке и доработке сайта.

С какого метода кэширования начать, если ничего не настроено?

С page cache — серверного кэша страниц. Он даёт основной эффект и на большинстве CMS внедряется через готовый плагин без программирования, обычно за 30-60 минут вместе с тестированием.

Нужен ли Redis небольшому интернет-магазину?

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

Чем OPcache отличается от page cache?

OPcache хранит скомпилированный код PHP-программы, page cache хранит готовую HTML-страницу для конкретного посетителя. Первый ускоряет выполнение кода на каждом запросе, включая запросы, для которых нет закэшированной страницы; второй убирает выполнение кода вовсе для уже закэшированных страниц.

Можно ли внедрить все методы кэширования самостоятельно?

Page cache, OPcache и браузерный кэш — обычно да, особенно на популярных CMS с готовыми инструментами. CDN и особенно объектный кэш с Redis требуют технической настройки на уровне сервера и без опыта лучше доверить разработчику.

Сколько по времени занимает внедрение всех методов сразу?

Базовые три метода (page cache, OPcache, браузерный кэш) — от нескольких часов до дня в зависимости от сложности сайта. CDN — ещё несколько часов на подключение и тестирование. Объектный кэш с Redis — от одного дня, поскольку требует настройки отдельного сервиса и интеграции с CMS.

Узнать, какие методы кэширования нужны именно вашему сайту

Проверим текущую настройку по всем уровням и покажем, что даст эффект, а что окажется лишним расходом.

ПОЛУЧИТЬ БЕСПЛАТНЫЙ АУДИТ →

Услуга по теме материала

Ускорим сайт: у наших проектов PageSpeed 90+ вместо 38

Материалы по теме