Промивання кешу REDIS


Відповіді:


12

Кнопка "Flush Magento Cache" видаляє записи кешу лише на основі їх тегів. Це використовує Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAGрежим під час виклику чистого в кешбек.

Кнопка «Зберігання кеш-пам’яті» промиває всю резервну копію кешу (там, де її підтримує бекенд), використовуючи Zend_Cache::CLEANING_MODE_ALLрежим під час виклику «чистого» в кеш-запасі.

Cm_Cache_Backend_Redis робить відмінність між цими двома режимами і правильно обробляє їх обох.

Що відбувається в Redis, коли "Зберігання кешу" промивається:

1380734058.807909 [0 127.0.0.1:61926] "flushdb"

Те, що відбувається в Redis, коли "Magento Cache" розмивається, виглядає приблизно так ...

1380733999.123304 [0 127.0.0.1:61889] "sunion" "zc:ti:541_MAGE"
1380733999.127239 [0 127.0.0.1:61889] "multi"
1380733999.127294 [0 127.0.0.1:61889] "del" "zc:k:541_APP_E4D52B98688947405EDE639E947EE03D" "zc:k:541_CORE_CACHE_OPTIONS" ... etc ...
1380733999.127493 [0 127.0.0.1:61889] "del" "zc:ti:541_MAGE"
1380733999.127523 [0 127.0.0.1:61889] "srem" "zc:tags" "541_MAGE"
1380733999.127547 [0 127.0.0.1:61889] "exec"
1380733999.128596 [0 127.0.0.1:61889] "sunion" "zc:ti:541_CONFIG"
1380733999.131160 [0 127.0.0.1:61889] "multi"
1380733999.131192 [0 127.0.0.1:61889] "del" "zc:k:541_CONFIG_GLOBAL_ADMIN" "zc:k:541_ENTERPRISE_LOGGING_CONFIG" ... etc ...
1380733999.131360 [0 127.0.0.1:61889] "del" "zc:ti:541_CONFIG"
1380733999.131379 [0 127.0.0.1:61889] "srem" "zc:tags" "541_CONFIG"
1380733999.131397 [0 127.0.0.1:61889] "exec"

Ви помітите, що в першому одна команда обробляється Redis порівняно з пізнішим прикладом, де два префікса кеша використовуються для видалення всіх пов'язаних записів кешу. Виходячи з того, що я бачу тут (і в коді), і префікси "541_MAGE" і "541_CONFIG" видаються в окремі виклики до бекенду кешу, при цьому конфігурація безпосередньо слідує за іншою.


Єдине, що я не перевірив - це те, що flushddb належним чином очищає обидві бази даних, але я вважаю, що це безпечно припустити, що це робить, так як у мене з цим не виникли проблеми
davidalger

Ви можете використовувати flushallдля всього або flushdbдля окремої бази даних.
Стів Роббінс

9

Я створив модуль, який дозволить вам робити більше об'ємних операцій у адміністратора. Клацання "Flush DB" фактично виконає flushdbкоманду.

введіть тут опис зображення

Завантажте: https://github.com/steverobbins/Magento-Redismanager

В іншому випадку вам доведеться використовувати командний рядок, щоб їх "повністю"


2

Насправді відповісти на ваше запитання: "Буде будь-яка з кнопок ЗАГАЛИТИ REDIS?"

ТАК - це відповідь, ви можете очистити кеш Magento через адміністратора. Ви також можете flushdb з командного рядка, але це не було вашим питанням ...

Не впевнений, чому це знищено ... якщо ви правильно використовуєте redis для кешу на бекенді, це буде спрацьовувати.

Ви також повинні мати

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.