Vider le cache REDIS

Réponses:

12

Le bouton "Vider le cache Magento" ne videra que les enregistrements de cache en fonction de leurs balises. Ceci utilise le Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAGmode lors de l'appel de clean sur le backend du cache.

Le bouton "Flush Cache Storage" videra l'intégralité du support de cache (là où le backend le prend en charge), en utilisant le Zend_Cache::CLEANING_MODE_ALLmode lors de l'appel de clean sur le backend du cache.

Le Cm_Cache_Backend_Redis fait la différence entre les deux modes et les gère correctement tous les deux.

Que se passe-t-il dans Redis lorsque le "Cache Storage" est vidé:

1380734058.807909 [0 127.0.0.1:61926] "flushdb"

Ce qui se passe dans Redis lorsque le "Magento Cache" est vidé ressemble à ceci ...

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"

Vous remarquerez que dans la première, une seule commande est traitée par Redis par rapport à l'exemple ultérieur où deux préfixes de cache sont utilisés pour supprimer tous les enregistrements de cache associés. Sur la base de ce que je vois ici (et dans le code), les préfixes '541_MAGE' et '541_CONFIG' sont vidés dans des appels séparés vers le backend du cache, la configuration suivant immédiatement l'autre.

davidalger
la source
La seule chose que je n'ai pas vérifiée est que flushddb efface correctement les deux bases de données, mais je pense qu'il est sûr de le supposer, car je n'ai pas eu de problème avec cela
davidalger
Vous pouvez utiliser flushallpour tout ou flushdbpour une base de données individuelle.
Steve Robbins
9

J'ai créé un module qui vous permettra de faire plus d'opérations en bloc depuis l'administrateur. Cliquez sur "Flush DB" pour exécuter la flushdbcommande.

entrez la description de l'image ici

Téléchargement: https://github.com/steverobbins/Magento-Redismanager

Sinon, vous devez utiliser la ligne de commande pour les vider "complètement"

Steve Robbins
la source
2

Pour répondre réellement à votre question: "Est-ce que l'un des boutons FLUSH REDIS?"

OUI est la réponse, vous pouvez nettoyer le cache de Magento via l'administrateur. Vous pouvez également flushdb à partir de la ligne de commande, mais ce n'était pas votre question ...

Je ne sais pas pourquoi cela est rejeté ... si vous utilisez correctement redis pour le cache sur le backend, cela fonctionnera.

Vous devriez également avoir

mprototype
la source