Front office не кэширует, backoffice кэширует.

Автор BSD-shnik, 24 июля 2016, 20:05:35

« назад - далее »

BSD-shnik

Доброго всем времени.
Сегодня хочу спросить следующее:

Каким образом настроить кэширование если:
PrestaShop Version   1.6.1.6

smarty.config.inc.php
---------------
$smarty->caching = true;
--------------

Производительность

SMARTY
Перекомпилировать файлы шаблонов если файлы были обновлены
Кэш - Да
Файловое кеширование
Очищать кеш при каждом изменении чего-либо

Режим отладки
Оба - нет

Доп. возможности
Комбинации - Да
Характеристики - Да
Группы клиентов - Да

ККК
Всё Да, кроме "Оптимизация Apache"

Медиа серверы - нет

Шифрование
Rijndael с использованием библиотеки mcrypt

Кэширование
Использовать кеширование - Да
Memcached через PHP::Memcache  -    unix:///tmp/memc.socket

Профилирование отображает:

В админке:
PrestaShop Cache   0.51 Mb
Global vars   1.89 Mb
Smarty Cache   enabled
Smarty Compilation   auto


Во Франтофисе:

PrestaShop Cache   - Mb
Global vars   0.69 Mb
Smarty Cache   disabled
Smarty Compilation   force compile


На главной, на страницах товара PrestaShop Cache   - Mb (нет кэша)
На CMS кэш присутствует, хотя выдано
Smarty Cache   disabled
Smarty Compilation   force compile

После очистки кэша и загрузки главной страницы каталоги и файлы создаются и в smarty/cache и в smarty/compile
То есть кэш создаётся......

"??"
- Почему
Smarty Cache   disabled
Smarty Compilation   force compile

-  Почему не кэшируется главная и товары? Где причина и как устранить?




   






Миколас


BSD-shnik

#2
Миколас
ЦитироватьПосле очистки кэша и загрузки главной страницы каталоги и файлы создаются и в smarty/cache и в smarty/compile
То есть кэш создаётся......
Да, разрешена.  Сейчас права 0770 рекурсивно, но ставил и 0777, результат одинаков.
И раздел смонтирован без acls,nosuid,noexec

DarinSr

Для Prestashop 1.6 кеширование настраивают в Расширенные параметры > Производительность.

BSD-shnik

DarinSr
Именно это и описано выше.

Господа! Внимательно читаем тему!

Adik

Цитата: DarinSr от 25 июля 2016, 11:32:28
Для Prestashop 1.6 кеширование настраивают в Расширенные параметры > Производительность.
Других настроек кеширования нет.
Только если у вас не установлены модули кеширования.
Если при включении этих настроек кеширование не работает, проблема на уровне сервера.

BSD-shnik

#6
Adik Да, спасибо, док-ю читал. Спросить надоумило:
Цитироватьsmarty.config.inc.php
---------------
$smarty->caching = true; здесь по дефолту false
--------------

А вообще, проблемы нет, как оказалось. Посмотрел статистику memcached:
После 3-х загрузок главной
   
              bytes      612492
              bytes_read   104568270
              bytes_written    41282993
..................


После 6-ти загрузок:
     
              bytes      740974
              bytes_read   370573646
              bytes_written   107109247
  ........................................


Как видим, кэш пишется и читается. 
Load Time   1155 ms - OK... for a shared hosting

В принципе, всё устраивает. Видимо, профилирование отображает работу только файлового кэша. Или это какой-то глюк?
По пути вопрос по кэшу:
Посмотрел содержимое кэша - некоторые запросы Mysql memcached не кэширует. Получается капросы с SQL_NO_CACHE в кэш memcached  не попадают? Таких запросов довольно много.  В таком случае, их  можно переписать. (Например, `id_hook`, `name`) Но почему эти запросы не должны кэшироваться? Что произойдёт, если их переписать?  И вообще, стОит ли этим заниматься?   

coder

Модули так пишут, чтобы не заморачиватся с кешированием. Переписывать их нужно. Кешировать все что возможно.

BSD-shnik

Всё таки не понятно, почему на главной


PrestaShop Cache   - Mb
Smarty Cache   disabled
Smarty Compilation   force compile


Странно. Админку кэширует. И почему не отображаться статистика закэшированного memcached?


DarinSr

Установите чистый prestashop в поддомен. Включите кеширование в админке, выключите перекомпиоация шаблонов. Больше ничего не меняйте.
В /config/defines.inc.php  измените только один параметр
define('_PS_DEBUG_PROFILING_', true);
Проверьте кеширование на новом сайте. Какой результат?

BSD-shnik

DarinSr
PrestaShop Cache   0.41 Mb
Smarty Cache   enabled
Smarty Compilation   never recompile

Adik

Вам нужно проверить файлы в папке /config/, вы там где-то изменили настройки кеширования.
Можно взять из вашей версии prestashop эти файлы (кроме settings.inc.php и xml) и заменить.

BSD-shnik

Adik
ЦитироватьВам нужно проверить файлы в папке /config/, вы там где-то изменили настройки кеширования.

Тогда и админка не должна кэшироваться.

Adik

Кто это сказал? Все можно настроить. Сделайте как я написал и проверьте.
В этой папке для админки и сайта раздельные файлы конф.
smartyadmin.config.inc.php
smartyfront.config.inc.php
Есть и еще возможности менять схему кеширования.

BSD-shnik

#14
Adik

Сделал, результат тот же. А можно по подробнее об изменении схемы кэширования? (Варианты с доп.модулями не рассматриваю)