Очистка всего кэша flush в Laravel
Иногда нужно сбросить не один ключ,
а весь кэш приложения сразу:
после большого обновления данных,
при отладке или на учебной площадке.
Для этого есть Cache::flush.
<?php
use Illuminate\Support\Facades\Cache;
Cache::flush();
?>
Метод без аргументов: он удаляет
все значения текущего хранилища
кэша. После flush любой
get вернёт умолчание
(или null), а
remember снова выполнит
замыкания и начнёт наполнять
кэш заново.
В боевом приложении flush
опасен: вместе с вашим ключом
списка постов пропадут и другие
кэши - сессии при некоторых
драйверах, настройки, чужие ключи
пакетов. Страницы на время станут
медленнее, пока кэш снова
не прогреется.
Для обычной логики после правки
одной сущности предпочитайте
forget по конкретному
ключу. flush оставляйте
для редких случаев: сброс на
стенде, админская кнопка «очистить
весь кэш», осознанная операция
при деплое.
Вызовите Cache::flush
и убедитесь, что ранее
записанный ключ исчез.
Почему на проде чаще используют
forget, а не flush?
Когда полная очистка кэша может быть уместна?