Magento 2: Jaka jest różnica między Cache Clean a Cache Flush?

22

W Magento 2 mamy 2 polecenia

php bin/magento cache:flush
php bin/magento cache:clean

Jaka jest dokładnie różnica między nimi? Ogólnie używam cache:flush. Nigdy nie używany cache:clean. Kiedy więc użyć którego polecenia iw jakiej sytuacji?

Ankit Shah
źródło

Odpowiedzi:

29

Aby usunąć nieaktualne elementy z pamięci podręcznej, możesz wyczyścić lub opróżnić typy pamięci podręcznej:

  • Czyszczenie typu pamięci podręcznej usuwa wszystkie elementy z włączonych typów pamięci podręcznej Magento. Innymi słowy, ta opcja nie wpływa na inne procesy lub aplikacje, ponieważ czyści tylko pamięć podręczną używaną przez Magento.

    Wyłączone typy pamięci podręcznej nie są czyszczone.

  • Opróżnienie typu pamięci podręcznej usuwa pamięć podręczną, co może wpływać na inne procesy przetwarzające aplikacje korzystające z tej samej pamięci.

Opróżnij typy pamięci podręcznej, jeśli próbujesz już wyczyścić pamięć podręczną i nadal występują problemy, których nie można odizolować.

Źródło: https://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-cache.html#config-cli-subcommands-cache-clean

Suresh Chikani
źródło
1
Czy mogę wiedzieć, jakie są inne aplikacje procesów, które będą korzystały z pamięci podręcznej Magento.
Jaya chandra
Możesz włączyć wydajność w Magento, konfigurując Konfigurowanie Redis dla pamięci podręcznej zaplecza, Konfigurowanie Memcached dla buforowania sesji i Konfigurowanie lakieru jako pamięci podręcznej dla całej strony (wyjaśniono to szczegółowo w książce kucharskiej Magento 2 autorstwa Ray Bogmana). Inne aplikacje mają sens, jeśli masz jeden serwer Redis lub inny serwer działający i skonfigurowany z więcej niż jednym Magento lub dowolną inną aplikacją. Uruchomienie Flush spowoduje usunięcie wszystkich plików + katalogów, ale uruchomienie Clean spowoduje usunięcie samych plików z katalogu \ Magento \ var \ cache reż.
Bala Varadarajan
11

pamięć podręczna php bin / magento: czysta

Czyszczenie typu pamięci podręcznej usuwa wszystkie elementy z włączonych typów pamięci podręcznej Magento. Innymi słowy, ta opcja nie wpływa na inne procesy lub aplikacje, ponieważ czyści tylko pamięć podręczną używaną przez Magento.

Wyłączone typy pamięci podręcznej nie są czyszczone.

php bin / magento cache: flush

Opróżnienie typu pamięci podręcznej usuwa pamięć podręczną, co może wpływać na inne procesy przetwarzające aplikacje korzystające z tej samej pamięci.

Odwołanie: DevDocs Zarządzaj pamięcią podręczną

Rafael Corrêa Gomes
źródło
Dzięki @Rafael. Więc który jest najlepszy i kiedy używać?
Ankit Shah,
Zależy, ale wolę pamięć podręczną: wyczyść
Rafael Corrêa Gomes
Próbowałem utworzyć pusty plik na var / cache i nie został on usunięty przez żadne z tych poleceń, jak wspomniałeś. Ale i tak za to dziękuję.
Ricardo Martins
@RicardoMartins to dlatego, że musisz utworzyć plik taki jak var / cache / mage - test-martines
Rafael Corrêa Gomes
Ta odpowiedź jest przeciwieństwem wybranej odpowiedzi Jeśli mam rację
Patrick van Efferen
2

Cytując Fabrizio Branca na ten temat:

(...) Magento, który jest wyposażony w te dwie różne akcje w pierwszej kolejności (na stronie zarządzania pamięcią podręczną znajdziesz także dwa przyciski).

Podczas buforowania: czyszczenie usuwa pamięć podręczną według tagów pamięć podręczna: opróżnienie wyczyści wszystko.

Istnieją dwie główne różnice tutaj:

  • niektóre rzeczy są przechowywane w pamięci podręcznej bez odpowiednich znaczników. cache: clean nie usunie ich.
  • inne rzeczy mogą korzystać z tej samej pamięci podręcznej (nie jest to zalecane, ale niestety czasami tak jest). Opróżnienie pamięci podręcznej spowoduje usunięcie wszystkiego. Więc jeśli wiele instancji Magento używa tej samej pamięci podręcznej lub jeśli przechowujesz swoje sesje w tej samej bazie danych Redis, której używasz do pamięci podręcznej (proszę nie!), To one również znikną.
Ricardo Martins
źródło
1

pamięć podręczna php bin / magento: czysta

Czyszczenie typu pamięci podręcznej usuwa wszystkie elementy z włączonych typów pamięci podręcznej Magento. Innymi słowy, ta opcja nie wpływa na inne procesy lub aplikacje, ponieważ czyści tylko pamięć podręczną używaną przez Magento.

Wyłączone typy pamięci podręcznej nie są czyszczone.

php bin / magento cache: flush

Opróżnienie typu pamięci podręcznej usuwa pamięć podręczną, co może wpływać na inne procesy przetwarzające aplikacje korzystające z tej samej pamięci.

Joselin Pavya Elezabeth
źródło
0

Za pomocą bin/magento cache:cleanmożesz określić (rozdzielane przecinkami) typy pamięci podręcznej, które chcesz wyczyścić.

Obsługiwane typy:

config, layout, block_html, collections, reflection, db_ddl, eav,
customer_notification, target_rule, full_page, config_integration,
config_integration_api, translate, config_webservice
yaronish
źródło
Możesz to zrobić za pomocą pamięci podręcznej: także koloru. Zobacz devdocs.magento.com/guides/v2.3/config-guide/cli/… .
Ricardo Martins
0

Podczas cache:cleanusuwania pamięci podręcznej przez tagi cache:flushwszystko wyczyści.

Istnieją dwie główne różnice tutaj:

niektóre rzeczy są przechowywane w pamięci podręcznej bez odpowiednich znaczników. cache: clean nie usunie ich. inne rzeczy mogą korzystać z tej samej pamięci podręcznej (nie jest to zalecane, ale niestety czasami tak jest). Opróżnienie pamięci podręcznej spowoduje usunięcie wszystkiego. Więc jeśli wiele instancji Magento korzysta z tej samej pamięci podręcznej lub jeśli przechowujesz swoje sesje w tej samej bazie danych redis, której używasz do pamięci podręcznej (proszę nie!), To one również znikną.

Źródło: https://github.com/netz98/n98-magerun/issues/588#issuecomment-112453280

nikin
źródło