Jump to content

Cart Queries Cache - Оптимизация Opencart / Кэширование запросов корзины


логика работы корзины в движке Opencart далека от совершенства и имеет серьезный недостаток:
при загрузке любой страницы сайта происходит многократное обращение к корзине и запросы данных о товарах в ней

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

и при добавлении товаров в корзину число запросов на ее обработку (а соответственно и нагрузка на сервер) возрастает в арифметической прогрессии (а если у товаров еще и опции - почти в геометрической)
то есть, чем больше в корзине товарных позиций (строк с разными товарами) - тем сильней будет "тупить" сайт

когда в корзине несколько позиций - это не так заметно
но если у вас оптовое направление и/или покупатели часто кладут в корзину больше десятка разных товаров - это становится проблемой

специально для решения этой проблемы был создан отдельный аддон Cart Queries Cache (входит в архив модуля)

 

Особенности:
- актуальное решение для движков версий 210х-303х
- кэширует товары корзины, снижая количество запросов к ней и нагрузку на сайт
- требует наличия установленного модуля CartKeeper

Обратите внимание:
- аддон устанавливается отдельно как дополнение для CartKeeper, сам модуль переустанавливать не нужно
- если были проблемы совместимости с другими модулями и вносились изменения/патчи - аддон должен выполняться после всех патчей, в самом конце
- если у вас уже используется какое-то решение (в виде модуля или правок) для кэширования запросов корзины - аддон устанавливать не нужно
 

Результаты тестирования:
на примере чистого движка Opencart 3020, с отключенным seo-url, отключенным подсчетом товаров в меню категорий и дефолтном шаблоне

тест загрузки пустой информационной страницы без вывода дополнительных модулей в схемах
(взята за основу теста как наименее нагруженная)

1. с пустой корзиной без товаров
Изображение
итого, 72 запроса

теперь добавим товары, сейчас в корзине 6 товарных позиций, у одной из них 8 опций

Спойлер

1075897144.png

 

2. стандартно, без кеширования запросов корзины (в корзине 6 товарных позиций, у одной из них 8 опций)
Изображение
итого, с 72 запросов их количество выросло до 307

3. с аддоном Cart Queries Cache т.е. с кэшированием запросов корзины (в корзине 6 товарных позиций, у одной из них 8 опций)
Изображение
итог - количество запросов при использовании кэширования стало даже ниже, чем с пустой корзиной без него

выводы очевидны


Comments

There are no comments to display.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...