Вход • Регистрация

Экстремальное кеширование

  • 12 мая 2017 г.
  • https://www.diafan.ru/highload/

    АЛГОРИТМ «ЭКСТРЕМАЛЬНОГО КЕШИРОВАНИЯ»

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

    Чтобы понимать принцип работы «экстремального кеширования», нужно знать, как работает обычное кеширование в DIAFAN.CMS. Вкратце, DIAFAN.CMS сохраняет в папке /cache/ в виде статичных файлов участки сайта, которые затем использует при построении сайта. Это только некоторые участки: блоки сайта, блоки модулей, списки веток комментариев и т.д.

    Что же начинает происходить при включении «экстремального кеширования»? В ядре DIAFAN.CMS активируется проверка, есть ли запрашиваемая посетителем страница в экстремальном кеше? Если да, то она безусловно выводится и остановка. Если запрашиваемого адреса в кеше нет, страница сайта генерируется классически, но её полная копия сразу кладется в кеш в статическом виде. Полностью. Т.е. если кто-то однажды открыл страницу какой-либо карточки товара, то она попадает в экстремальный кеш, и затем всем остальным пользователям будет показываться оттуда. Соответственно, один раз страница генерируется как обычно, с полной нагрузкой на хостинг, остальные 999 раз уже нет. Она будет грузиться как статичный HTML-файл, без нагрузки на mySQL-сервер и хостинг.

    Если на странице, которая сохранена в кеше, что-то обновляется, например, добавляется комментарий, эта страница из экстремального кеша удаляется, чтобы затем сгенерироваться заново. Очистка экстремального кеша происходит также всякий раз, когда администратор сайта что-то делает в административной части. Добавляет товар, новость, отвечает на вопрос-ответ - экстремальный кеш удаляется и затем формируется новый. В этом и смысл «экстремального кеширования»: если из 1000 посетителей 99% - гости, которые просто смотрят тексты, карточки товаров и прочие популярные страницы, то им незачем каждый раз формировать страницу с использованием всех ресурсов сервера.

    Теперь о минусах «экстремального кеширования». Если покупатель положит товар в корзину, он это сразу увидит "В корзине 1 товар" - сработает ajax. Однако, когда покупатель перейдет на другу карточку товара, он снова увидит в блоке корзины "Нет товаров", ведь кеш формировался для общей страницы карточки. При этом, страница оформления заказа, которая имеет адрес site.ru/shop/cart/?544548(случайным образом генерируемый url), открываться будет актуальной, ведь этой страницы в кеше нет. Поэтому корзину система сгенерирует налету, со всеми подключениями и пользователь спокойно оформит заказ.

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

    Включить параметр «Экстремальное кеширование» можно в модуле «Параметры сайта».
  • 07 июля 2020 г.
  • Не использую. Периодически вместо контента появляются "кракозябры", поэтому бесполезная функция как по мне

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум