최근 서비스 업체들은  '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

+ Recent posts