Промежуточные сайты Magento и аннулирование кэша Redis - PullRequest
1 голос
/ 03 марта 2012

Это решение для нескольких магазинов.

Я тестирую систему кеширования 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
 ));
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...