Критерии качественного деплоя
В процессе релиза не должно быть ни секунды простоя!
Атомарность
Атомарность деплоя - принцип внедрения изменений как единое целое, без частичных обновлений. То есть, разворачивается либо всё, либо ничего.
Обратимость
Обратимость деплоя - возможность отката системы к предыдущим версиям (пока, например, ошибка, вследствие которого систему откатили, решается).
Любое дейтсвие должно быть обратимо.
Blue-green deployment
Also known as A/B deployment or red-black deployment.
При сине-зеленом развертывании весь клиентский трафик одномоментно перераспределяется с одного бэкенда на другой. Эта схема позволяет сначала протестировать на зеленом стенде, только потом перераспределить трафик с синего.
Цвета особой роли не играют.
Canary deployment
При канареечном развертывании переключение происходит постепенно, начиная с части пользователей. Так доступ к новой версии продукта появляется у какого-то процента end юзеров, что минимизирует последствия при обнаружении ими бага на проде.
Пусть тестят end юзеры
Можно на canary стенде уведомлять юзеров, что они используют бета версию продукта и дать им возможность легко репортить баги. Профит.