Представьте ситуацию.
Пятница. Вечер.
Разработчик выкатывает новую версию.
Деплой проходит успешно.
Все выдыхают.
И через пять минут начинают приходить сообщения:
❌ пользователи не могут войти;
💳 платежи перестали проходить;
📱 приложение падает после запуска.
В этот момент уже поздно думать: «А как вернуть всё обратно?»
Именно для этого существует rollback.
Rollback — это возможность быстро откатиться на предыдущую стабильную версию, если после обновления что-то пошло не так.
Казалось бы, всё просто.
Но есть одна важная деталь:
Rollback придумывают не тогда, когда всё сломалось. Его готовят заранее.
Потому что в момент аварии никто не хочет вручную искать старую сборку, вспоминать команды для деплоя и молиться, чтобы резервная копия вообще существовала.
Хорошие команды заранее продумывают:
🔹 как быстро откатить новую версию;
🔹 что делать с миграциями базы данных;
🔹 какие изменения можно безопасно отменить;
🔹 сколько времени займет восстановление сервиса.
Иногда наличие готового rollback-плана сокращает простой с нескольких часов до пары минут.
И пользователи даже не успевают понять, что что-то произошло.
Поэтому опытные разработчики говорят простую вещь:
Если ты не знаешь, как откатить релиз, значит, ты ещё не готов его выкатывать.
👇 А вам уже приходилось откатывать релиз? Или пока все деплои проходили без приключений?