Opróżnianie pamięci podręcznej REDIS


Odpowiedzi:


12

Przycisk „Opróżnij pamięć podręczną Magento” opróżnia rekordy pamięci podręcznej tylko na podstawie ich znaczników. Używa tego Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAGtrybu podczas wywoływania clean na backendie pamięci podręcznej.

Przycisk „Opróżnij pamięć podręczną” opróżni cały podkład pamięci podręcznej (tam, gdzie obsługuje go backend), używając Zend_Cache::CLEANING_MODE_ALLtrybu podczas wywoływania clean na zapleczu pamięci podręcznej.

Cm_Cache_Backend_Redis robi różnicy między tymi dwoma trybami i prawidłowo obsługuje ich obu.

Co dzieje się w Redis po opróżnieniu pamięci „Cache Storage”:

1380734058.807909 [0 127.0.0.1:61926] "flushdb"

Co dzieje się w Redis po opróżnieniu „Magento Cache” wygląda mniej więcej tak ...

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"

Zauważysz, że w pierwszym jedno polecenie jest przetwarzane przez Redis w porównaniu z późniejszym przykładem, w którym dwa prefiksy pamięci podręcznej są używane do usunięcia wszystkich powiązanych rekordów pamięci podręcznej. W oparciu o to, co tu widzę (i w kodzie) zarówno prefiksy „541_MAGE”, jak i „541_CONFIG” są opróżniane w osobnych wywołaniach backendu pamięci podręcznej, a konfiguracja następuje bezpośrednio po drugim.


Jedyne, czego nie zweryfikowałem, to to, czy flushddb prawidłowo czyści obie bazy danych, ale myślę, że można bezpiecznie założyć, że tak jest, ponieważ nie miałem z tym
problemu

Możesz użyć flushalldo wszystkiego lub flushdbdo pojedynczej bazy danych.
Steve Robbins


2

Aby odpowiedzieć na twoje pytanie: „Czy którykolwiek z przycisków PŁUCZ REDIS?”

TAK jest odpowiedzią, możesz wyczyścić pamięć podręczną Magento za pośrednictwem administratora. Możesz także opróżnić z linii poleceń, ale to nie było twoje pytanie ...

Nie jestem pewien, dlaczego zostało to odrzucone ... jeśli poprawnie używasz redis do pamięci podręcznej w backendie, to zadziała.

Ty też powinieneś

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.