
클라이언트 입장에서 서비스가 끊어지지 않으면서(Zero-downtime) 새로운 버전을 업데이트

일반적인 방식, 점진적으로 배포 버전을 바꾸는 방식
배포 스크립트를 짤 때, 배포 순서별로 딜레이를 준다.
ex) 리눅스 sleep 사용을 사용하여 구현
1번 서버 다운 → 30분 뒤에 2번 서버 다운 (그 사이에 1번 서버가 버젼 업)
오케스트레이션?
여러 개의 컴퓨터 시스템, 애플리케이션 및/또는 서비스를 조율하고 관리하는 것
<현재 운영 중인 서비스 버전 : 블루 / 새롭게 배포할 버전 : 그린>

블루/그린 버전을 나란히 구성해둔 상태에서
로드 밸런서가 트래픽을 블루에서 그린으로 모두 변경하는 방식
Rolling Deployment + Blue/Green Deployment
+ 새로운 버전에 대한 오류를 조기에 감지 (A/B테스트)

블루/그린 버전을 나란히 구성 ( Blue/Green )
점진적으로 블루에서 그린으로 트래픽을 옮김 ( Rolling )
-> 유저군 / 가중치에 따라 일부만 그린 버전으로 트래픽을 보냄. ( A/B테스트 )
A/B테스트?
두 가지 또는 그 이상의 시안을 실험하여
비즈니스에 최상의 결과를 가져오는 버전을 알아내는 웹 사이트 최적화 방법