티스토리 뷰

배포 전략?

배포 전략은 소프트웨어나 애플리케이션을 개발한 후에 실제로 사용자에게 제공하기 위해 배포하는 방식이나 계획을 의미한다. 

 

In-palce Deployment

출처:https://garafu.blogspot.com/2018/11/release-strategy.html

기존 동작하고 있던 애플리케이션을 모두 중지하고 최신 버전의 애플리케이션을 실행하는 방법으로 이뤄진다.

이 방법의 경우 최신 버전 애플리케이션에서 오류가 난다하더라고 롤백하기 쉽다는 장점이 존재한다. 하지만 중간에 서비스가 멈추기 때문에 무중단 배포는 불가능하다.

 

Rolling Deployment

출처:https://garafu.blogspot.com/2018/11/release-strategy.html

기존에 동작 중이던 서버를 정해진 수 만큼 연결을 해제하고 해당 서버에 최신 버전의 애플리케이션을 실행하는 방식의 배포전략이다. Rolling 배포 전략은 점진적으로 버전을 변경한다고 생각하면된다. 배포를 위한 별도의 인스턴스(서버)를 할당받을 필요가 없기에 서버 수에 제약이 있을 경우 유용하고 무중단 배포 또한 가능하다. 하지만 배포를 진행하다가 특정 서버에 에러가 발생하여 롤백이 필요할 때 쉽지않다는 단점이 있다. 

 

Blue/Green Deployment

출처:https://garafu.blogspot.com/2018/11/release-strategy.html

실행 중인 서버(블루)와는 별도의 서버(녹색)에 최신 애플리케이션을 배포하고 테스트 후 정상 동작이 확인되면 로드밸런서가 블루 서버와의 연결은 끊어버리고 그린 서버와 연결을 하는 방식으로 배포를 진행한다. 무중단 배포가 가능하고 에러가 발생했을 때 롤백에도 좋다. 하지만 배포를 위한 별도의 인스턴스가 필요하므로 자원이 많이 든다는 단점이 존재한다.

 

Immutable Deployment

출처:https://garafu.blogspot.com/2018/11/release-strategy.html

Blue/Green 배포와 비슷하지만 이전에 사용했던 서버환경이 지워버린다는 점이 다르다. 롤백하는 경우에도 이전 애플리케이션을 릴리스하고 전환하는 방법을 사용한다.

Canary Deployment

출처:https://garafu.blogspot.com/2018/11/release-strategy.html

실행 중인 서버의 일부에만 최신 애플리케이션을 배포하고 릴리스하는 방법이다. 특정 사용자에게만 새로운 응용 프로그램을 사용하게 할 수 있다. 새 애플리케이션에 대한 테스팅이 가능하고 오류율 및 성능 모니터링에 사용할 수 있는 배포 전략이다.


 

Reference.

https://garafu.blogspot.com/2018/11/release-strategy.html

 

デプロイ / リリース 手法 まとめ

主にC#、JavaScriptを使ったプログラミングに関するテクニックやハックに関するブログ。

garafu.blogspot.com

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함