최근 서비스 업체들은 'MSA(마이크로서비스)'와 더 자주 '배포(Deployment)'하는 방식으로 변화하고 있는 추세다.
마이크로서비스 아키텍처로 앱을 만들면서 더욱 빠른 속도와 민첩성을 얻을 수 있게 되었고, 이러한 개발 속도의 증가는 는 이전에 비해 더 자주 '배포'가 일어날 수 밖에 없는 기반을 만들어 주었다.
이에 대표적인 배포 전략들에 대해 알아보겠다.
1. 롤링
- 일반적으로 많이 이용되고 있는 배포 방식이다.
- 서버를 구 버전에서 새 버전으로 하나 씩 점진적으로 배포해 나아가는 방식이다.
- 배포 중 서비스 중인 인스턴스의 수가 일시적으로 감소하므로 서버 처리 용량에 대한 고려가 필요하다.
2. 카나리
- 일부 사용자 혹은 지정된 서버들에만 새 배전을 배포하여, 신 버전에 대한 검증 이후
전체 사용자 또는 전 서버들에 새 버전을 모두 배포하는 방식이다.
3. 블루-그린
- 서비스 환경과 동일한 환경을 각각 준비해 놓은 상태에서,
서로 다른 환경에 구 버전과 신 버전을 배포해 놓고, 이후 사용자의 트래픽을 일시에 구 버전에서 신 버전으로 변경시키는 배포 전략이다.
- 빠른 롤백이 가능하고, 내부 트래픽인 경우 운영 서비스에 영향을 주지 않으면서 새버전에 대한 테스트를 진행해 볼 수 있다는 장점이 있는 반면 시스템 자원이 두 배로 필요하다.
4. A/B 테스팅
카나리 배포 방법과 비슷한데, A/B테스팅의 초점은 신 버전에 대한 이용자의 반응을 측정 하는데에 있다.
일부 사용자 혹은 서버들에만 신 버전을 배포하여 사용자의 반응을 보고 이후 전체 사용자나 전 서버들에 배포하는 방식이다.
'IT기술' 카테고리의 다른 글
마이크로서비스 아키텍처(Microservice Architecture) (0) | 2020.04.23 |
---|---|
React 란? (0) | 2020.01.19 |
REST API (0) | 2020.01.19 |