Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”

0 Пользователей и 1 Гость просматривают эту тему.

*

andrey

  • *
  • 31
  • +6/-0
    • Просмотр профиля
Добрый день,
У меня включено кэширование apc для xslt-шаблонизатора

И как выясняется при нем не работают фильтры каталога. Техподдержка предложила лишь отключить кэш для этих запросов. Ладно отключить кэш для генерации самого фильтра не такая уж проблема, но результаты выборки - это самые тяжелые запросы на сайте и как раз ради них кэш включен.

Кто как выходил из этой ситуации. Пожалуйста, поделитесь опытом

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Кэширование и фильтры каталога
« Ответ #1 : 01 Июля 2014, 15:28:51 »
немного смутила формулировка
Цитировать
У меня включено кэширование apc для xslt-шаблонизатора

И как выясняется при нем не работают фильтры каталога

Либо мне всегда везло, либо не во всех случаях apc ломает фильтр. И кстати, а как именно у вас ломается фильтр при включенном apc?

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Кэширование и фильтры каталога
« Ответ #2 : 01 Июля 2014, 15:46:53 »
Кто как выходил из этой ситуации. Пожалуйста, поделитесь опытом

За то время, что работаю с UMI, заметил одну очень интересную тенденцию - если сайт на UMI работает долго - значит, что используются неоптимальные шаблоны и макросы. Мое "лекарство" - оптимизация шаблонов (если tpl, то перевести на xslt, если xslt - проверить, насколько они "чистые"), оптимизация кастомов (видел решения, в которых selector запускался внутри цикла на 1000 итераций и программист очень долго уверял меня в том, что так и должно быть) + настройка избирательного кеширования с помощью xsltCache.

Если нужно помочь - пишите в ЛС.
« Последнее редактирование: 01 Июля 2014, 16:08:34 от e.ioffe »
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

andrey

  • *
  • 31
  • +6/-0
    • Просмотр профиля
Re:Кэширование и фильтры каталога
« Ответ #3 : 02 Июля 2014, 18:24:53 »
Либо мне всегда везло, либо не во всех случаях apc ломает фильтр. И кстати, а как именно у вас ломается фильтр при включенном apc?
Просто всегда состояние "до фильтрации"
Меня тоже это смутило, поэтому я задал вопрос в техподдержку. Вообще у меня используются кастомные функции для генерации фильтров и вывода материала, но на основе родных. Там ничего на этот счет найдено не было. Но стандартные у меня тоже не работают
Если у вас работают, то опять же ахтунг техподдержке. Они ничего дельного сказать не могли - так и должно


За то время, что работаю с UMI, заметил одну очень интересную тенденцию - если сайт на UMI работает долго - значит, что используются неоптимальные шаблоны и макросы. Мое "лекарство" - оптимизация шаблонов (если tpl, то перевести на xslt, если xslt - проверить, насколько они "чистые"), оптимизация кастомов (видел решения, в которых selector запускался внутри цикла на 1000 итераций и программист очень долго уверял меня в том, что так и должно быть) + настройка избирательного кеширования с помощью xsltCache.

Если нужно помочь - пишите в ЛС.
Да, я ощущаю как я нагрешил в некоторых местах) Вызовов в цикле, конечно, нет, но все же) Но это всё из-за заказчика, который меняет свои требования и добавляет новые хотелки плюс моей некой неосведомленности вначале.

Сейчас я бы не отказался от советов как все же начать кэшировать. Может что-то в этом духе? http://wiki.umisoft.ru/%D0%A3%D0%BD%D0%B8%D0%B2%D0%B5%D1%80%D1%81%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4_%D0%B4%D0%BB%D1%8F_%D0%BA%D1%8D%D1%88%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_xml-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_XSLT
« Последнее редактирование: 02 Июля 2014, 18:28:48 от andrey »

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Кэширование и фильтры каталога
« Ответ #4 : 02 Июля 2014, 18:29:15 »
Да, я ощущаю как я нагрешил в некоторых местах) Вызовов в цикле, конечно, нет, но все же) Но это всё из-за заказчика, который меняет свои требования и добавляет новые хотелки плюс моей некой неосведомленности вначале.

Сейчас я бы не отказался от советов как все же начать кэшировать. Может что-то в этом духе?

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

Если нет, можно просто осторожно закэшировать тяжелые моменты.

Да, для начала статья из wiki подойдет, хотя ее нужно немного доработать с тем, чтобы в макросе обрабатывались $REQUEST параметры
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/