Рассмотрим механизмы кеширования в WordPress & WooCommerce для ускорения работы сайтов, повышения производительности и скорости открытия страниц.
Кэширование — это процесс, при котором элементы сайта или страница целиком сохраняются в кэше (хранилищах быстрого доступа). Благодаря этому контент не генерируется заново для каждого посетителя, создавая нагрузку на сервер, а извлекается из кэша в готовом виде и отдаётся пользователям быстрее.
Капитан Очевидность
Плагины кеширования для ускорения сайта
WP Rocket
Один из лучших платных плагинов для кеширования сайтов на базе WordPress & WooCommerce.
WP Rocket — премиум WordPress кеширующий плагин. Его часто считают наиболее эффективным решением для кэширования WordPress. Его могут использовать как опытные, так и начинающие пользователи WordPress из-за большого разнообразия вариантов и инструментов автоматической оптимизации.
Сайт: https://wp-rocket.me/
WP Super Cache
Очень быстрый движок кеширования для WordPress, создающий статические HTML-файлы.
Один из старейших и наиболее стабильных компонентов. Позволяет гибко настраивать кеширование с учетом разных типов сайтов.
Полностью бесплатный.
Ссылка: https://ru.wordpress.org/plugins/wp-super-cache/
Surge
Аналог WP SuperCache, также ориентирован на создание статического кеша для сайта, с очень высокой скоростью работы.
Но ориентирован больше на профессионалов, с управлением через WP CLI.
В синтетических тестах нагрузки, Surge показал способность выдерживать 1000-2500 запросов в секунду, на дешевом одноядерном виртуальном сервере, всего с 1 ГБ оперативный памяти.
Ссылка: https://wordpress.org/plugins/surge/
Redis – объектный кеш
Создает постоянный кэш объектов системы. Работает на серверах где есть Redis. Например Beget.
Отлично работает для больших сайтов с сложным функционалом и большой нагрузкой.
Сайт: https://ru.wordpress.org/plugins/redis-cache/
Batcache – старый добрый страничный кеш
Это один из старейших плагинов кеширования на WP, но уже много лет не развивается.
Когда то он был базой для кеширования wordpress.com, что там сегодня уже плохо понятно.
Хорошо подходит для супер сложных и больших сайтов где нужно кешировать страницы через memcache.
Ссылка: https://github.com/Automattic/batcache
Методы работы с кешированием
Статический кеш страниц
Отлично подходит для статических сайтов (типа SSG). Когда в целом сайт может работать на одном лишь статическом контенте.
Подходит для 80% сайтов и все будет работать очень быстро.
Иногда может комбинироваться с различными динамическими методами типа CSR (рендеринг на клиенте – браузере) или SSR (рендеринг на сервере).
Тут важно уметь совмещать механизмы, что то отдается через статику, что то генерится на стороне браузера, а что то на стороне клиента.
Гибридные методы кеширования это сложная, отдельная большая тема, которая требует высокого инженерного уровня.
Для простоты за пример можно брать NextJS. Даже можно писать все решения на его базе и оно будет работать сразу как положена – так сказать by design.
Но технически это можно делать и на одном WordPress – если понимать как все устроено. Тут нужно иметь 5-10 лет опыта с хайлоад проектами или писать целую книгу. В формат статьи такое обернуть очень сложно.
Транзитный кеш
Один из самых простых типов кеширования, но работает только на уровне всего сайта. Хорошо подходит если надо закешировать какой то набор данных или целый блок для главной страницы и для всех пользователей.
Есть 2 основые функции: update_transient() & get_transient().
Объектное кеширование
Кэширование объектов в WordPress (object cache), это встроенный механизм системы, который позволяет сохранять данные произвольного типа, и получать эти данные при необходимости. Этот кэш используется для того, чтобы хранить результаты выполнения сложных операций.
Это гибкая технология ускорения сайтов, которая требует достаточно выского инженерного уровня в разработке.
Более подробно можно почитать тут: https://wpmag.ru/2014/keshirovanie-obektov-wordpress/
Частые вопросы про кеширование в WordPress & WooCommerce
Что такое кэширование и как управлять им в WordPress?
Кэширование — это процесс, при котором элементы сайта или страница целиком сохраняются в кэше (хранилищах быстрого доступа). Благодаря этому контент не генерируется заново для каждого посетителя, создавая нагрузку на сервер, а извлекается из кэша в готовом виде и отдаётся пользователям быстрее.
В WordPress есть 3 основных типа кеша: статический кеш страниц, объектный кеш в памяти, транзитный кеш
Как настроить кэширование сайта WordPress?
Во первых вам надо понять какой тип кеша подходит для проблемы.
В большинстве кейсов хватает простого статического кеша страниц и можно использовать плагин WP Super Cache.
В проектах сложнее бывает нужно использовать транзитный кеш.
В самых сложных проектах используется объектный кеш.
Какие преимущества кэширования?
Основная задача кэширования – повышение производительности сайтов и приложений за счет быстрой передачи запрашиваемых данных, которые уже известны, так как были запрошены ранее.
Также кэширование снижает нагрузку на сервер, так как ему не приходится из раза в раз повторять сложные вычисления. Можно сэкономить на дорогом серверном оборудовании, а при аномальном наплыве посетителей кэш поможет избежать «падений», вызванных избыточной нагрузкой.
Спасибо за инструменты. Весьма пригодились 🙂
Спасибо за интересный материал. Понятно, что использование подобных генераторов – это несерьезно, и, как правильно указал автор – “временное решение”, но порой на подобных сервисах можно почерпнуть вдохновение, найти отправную точку. А уже на основе увиденного, самостоятельно отрисовать логотип в иллюстраторе или фотошопе.
Использую ваш инструмент Logojoy и очень доволен! Благодарю!