2025-11-03 00:32

Tags: 소프트웨어 아키텍처

무중단 배포(Zero-Downtime Deployment)

  • 서비스 업데이트 중에도 사용자는 중단 없이 서비스를 이용해야 하며, 이를 무중단 배포라고 한다
전략설명장점단점
롤링 (Rolling)서버를 하나씩 또는 일정 단위로 점진적으로 교체하는 방식배포 중 추가적인 서버 자원이 거의 필요 없음. 구현이 비교적 간단함.배포 중 구버전과 신버전이 공존하여 호환성 문제가 발생할 수 있음. 배포 속도가 느림.
블루-그린 (Blue-Green)구버전(블루)과 동일한 환경의 신버전(그린)을 미리 준비하고, 로드 밸런서를 이용해 트래픽을 한 번에 전환빠르고 안전한 롤백(Rollback)이 가능. 버전 간 호환성 문제에서 자유로움.시스템 자원이 2배로 필요하여 비용 부담이 큼. 전환 시점에 일부 세션이 유실될 수 있음.
카나리 (Canary)일부 사용자에게만 신버전을 공개하여 안정성을 테스트하고, 점진적으로 모든 사용자에게 확대신버전의 위험을 최소화하며 테스트 가능. A/B 테스트 등 마케팅 목적으로 활용 가능.구현 및 관리가 복잡함. 테스트 기간이 길어질 수 있음.