Вот как мы это делаем:
1) Развертываем приложение на целевом сервере (используем хостинг AWS. Поэтому мы раскручиваем новый экземпляр, разворачиваем приложениекогда мы закончим, мы изменим основной сервер на новый, предварительно подготовленный)
2) Очистим кеши в следующем порядке:
php bin/console doctrine:cache:clear-metadata --env=prod
php bin/console doctrine:cache:clear-query --env=prod
php bin/console cache:clear --env=prod
3) Привести предварительно подготовленный экземплярк производству (в качестве LB-upstream)
Если что-то нужно откатить, мы подготавливаем откат на новом экземпляре (недоступном для публичных представлений) и снова очищаем кэши.Если все прошло хорошо, мы перенесем этот новый сервер в верхние потоки loadbalancer.
Мы работаем только с ключами кеша для категоризации, а также с пулами кеша, которые мы используем для группировки вещей.Мы получили Redis для Dev, один для подготовки к производству, так что в случае, если мы можем «FLUSHALL» в каждом Redis-Cli, и это не влияет на другие среды.
Надеюсь, это поможет!