OpenCart и Redis

Начал осваивать для общего развития популярную CMS opencart и решил сразу внести некоторые действия по оптимизации производительности системы. Я взял третью ветку за основу и я хотел положить кэш и сессии в redis.

Хостинг я выбрал beget, в связи с тем, что он один из лучших хостеров России, а так же из коробки поддерживает Redis сервер (включается в сервисах панели управления).

С кэшем мне повезло, третья версия умеет это из коробки, достаточно прописать нужные настройки, для этого нужно прописать константы в config.php и admin/config.php:

И в настройках по умолчанию system/config/default.php указать движок для кэша

С сессиями оказалось чуть сложнее, так как механизм сессий у opencart свой и настройка в php никак не влияет на неё. По умолчанию админка хранит сессии в файлах, фронт часть хранит в БД и эти 2 драйвера доступны, но нам надо в redis.

Для этого был написан простенький класс system/library/session/redis.php:

И поменять настройки для фронт и бэк части system/config/catalog.php и system/config/admin.php:

 

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

3 thoughts on “OpenCart и Redis

    1. aisamiery Автор записи

      Боюсь что я не проверял и с данной мажорной веткой не работал.
      Это все я проделывал на третьей (opencart 3), последний на текущей момент ветки.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *