У меня есть статическая часть, которая включена на каждой странице (навигация), но генерация занимает много времени. Вот почему я установил время жизни кеша и статический ключ кеша.
Работает нормально, пока не включен FPC. Затем блок все еще генерируется снова для вновь вызываемой страницы и не обрабатывается из кэша блока.
Есть эта строка в Enterprise_PageCache_Model_Observer
:
Mage::app()
->getCacheInstance()
->banUse(Mage_Core_Block_Abstract::CACHE_GROUP); // disable blocks cache
Что является причиной этого? Для меня имеет смысл по-прежнему кэшировать определенные блоки, даже если FPC включен, потому что в противном случае генерация страниц, которые не полностью обслуживаются из кэша, замедляется.
- Какое решение о дизайне стоит за этим?
- Какое хорошее решение вокруг этого?
- Было бы вредно, если бы я просто убрал этот запрет на блокировку кэша?
Ответы:
Эта ошибка была исправлена в Magento 1.14.2.0. (ссылка http://merch.docs.magento.com/ee/user_guide/magento/release-notes-ee-1.14.2.html в разделе Известные проблемы)
источник
if ($this->_processor->canProcessRequest($request) && ($request->isStraight() || $this->_processor->getRequestProcessor($request)) ) { Mage::app()->getCacheInstance()->banUse(Mage_Core_Block_Abstract::CACHE_GROUP); }
но я не могу найти объяснения причин, по которым вы бы запретили кеш блоков. Можете ли вы просветить больше?Чтобы можно было отключить FPC для динамических блоков, например, на странице оформления заказа или в корзине. Что касается третьего вопроса, по моему мнению, вы не должны делать этого, что может нарушить процесс FPC (чтобы быть откровенным, чтобы дать правильный ответ, мы должны также проверить исходный код).
источник