REDISキャッシュのフラッシュ


回答:


12

[Magentoキャッシュをフラッシュ]ボタンは、タグに基づいてキャッシュレコードのみをフラッシュします。これは、Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAGキャッシュバックエンドでcleanを呼び出すときにモードを使用します。

[キャッシュストレージのフラッシュ]ボタンはZend_Cache::CLEANING_MODE_ALL、キャッシュバックエンドでcleanを呼び出すときにモードを使用して、キャッシュバッキング全体(バックエンドでサポートされている場合)をフラッシュします。

Cm_Cache_Backend_Redisは二つのモードを区別を行い、適切に両方を処理します。

「キャッシュストレージ」がフラッシュされると、Redisで何が起こりますか。

1380734058.807909 [0 127.0.0.1:61926] "flushdb"

「Magentoキャッシュ」がフラッシュされたときにRedisで何が起こるかは次のようになります...

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によって単一のコマンドが処理されますが、2つのキャッシュプレフィックスを使用して関連するすべてのキャッシュレコードを削除する後者の例と比較してください。ここ(およびコード)に表示されている内容に基づいて、 '541_MAGE'と '541_CONFIG'の両方のプレフィックスがキャッシュバックエンドへの個別の呼び出しでフラッシュされ、構成は他の直後に続きます。


私が確認しなかった唯一のことは、flushddbが両方のデータベースを適切にクリアすることですが、私は問題がなかったので、それがそうだと想定しても安全だと思います
davidalger

flushallすべてまたはflushdb個別のデータベースに使用できます。
スティーブロビンス


2

あなたの質問に実際に答えるには:「ボタンFLUSH REDISのどちらか」

YESが答えです。管理者を介してMagentoのキャッシュを消去できます。コマンドラインからflushdbを実行することもできますが、それはあなたの質問ではありませんでした...

なぜこれが否決されるのかわからない...バックエンドのキャッシュにredisを適切に使用している場合、これは機能します。

あなたも持っている必要があります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.