Это решение для нескольких магазинов.
Я тестирую систему кеширования Redis, подробно объясненную Винаем Коппом по этой ссылке: http://magebase.com/magento-tutorials/improving-the-file-cache-backend/
Я проверяю, чтобы увидеть, если я отредактирую продукт на промежуточном веб-сайте C (промежуточная копия веб-сайта A), он аннулирует страницу продукта на исходном веб-сайте A.
Когда я проверял его, продукт на веб-сайте B был в порядке, и страница, похоже, оставалась в кэше.
Когда я редактировал продукт в представлении «Магазин» на веб-сайте C (копия веб-сайта A) и обновлял «страницу отображения продукта» на веб-сайте A, казалось, что данные страницы были признаны недействительными, а кэш был очищен и создан заново. .
Это ожидаемое поведение или это ошибка в Redis?
Какие инструменты я могу использовать, кроме xdebug для пошагового выполнения кода Redis.php, для проверки кэширования этих тегов?
Хотелось бы получить дополнительную помощь, и некоторый свет по теме о промежуточных веб-сайтах и кешировании тоже поможет.
Дальнейшее расследование:
Идентификатор, который был сохранен снова, называется "06d_CUSTOM_MODULE_BLOCK_MAINMENU_STORE_2"
И теги:
06d_CATALOG_PRODUCT
06d_BLOCK_HTML
06d_MAGE
Есть смысл?
Не похоже, что содержимое страницы продукта обновляется, но меню есть?
Я немного запутался с этим.
Следующий код создает этот тег в нашем блоке MainMenu.php:
/**
* Make the block cacheable
*/
protected function _construct()
{
$this->addData(array(
'cache_lifetime' => 3600,
'cache_tags' => array(Mage_Catalog_Model_Product::CACHE_TAG), //delete this cache on change of any product
'cache_key' => 'Custom_Module_Block_Mainmenu_store_'. Mage::app()->getStore()->getId(), //static cache key cos this block is the same on every page
));
}
Я действительно думаю, что это как-то связано с тем, какой веб-сайт установлен по умолчанию, будет обновляться / повторно кэшироваться.