본문 바로가기
반응형

[개발] Infrastructure/Deployment7

Docker 블루-그린 배포 블루-그린 배포(Blue-Green Deployment)는 무중단 배포를 위한 기법 중 하나로, 두 개의 동일한 환경을 사용하여 배포의 리스크를 최소화하고, 빠르게 롤백할 수 있는 구조를 제공합니다. 이 방법은 특히 중단 없이 새로운 소프트웨어 버전을 배포하고자 할 때 유용합니다. 블루-그린 배포의 주요 개념 블루 환경 현재 운영 중인 프로덕션 환경입니다. 그린 환경 새 버전의 애플리케이션을 배포할 준비가 된 새로운 환경입니다. 배포 과정 초기 상태 블루 환경이 실제 트래픽을 처리하고 있습니다. 그린 환경 준비 그린 환경에 새로운 애플리케이션 버전을 배포합니다. 이 환경은 아직 실제 트래픽에 노출되지 않습니다. 환경 전환 새 버전이 준비되면, 트래픽을 블루 환경에서 그린 환경으로 전환합니다. 이는 종종 .. 2023. 11. 17.
MSA 통신 패턴 (동기, 비동기)과 Apache Kafka, Zookeeper 마이크로서비스를 공부하면 메시지 기반의 느슨한 결합이라는 키워드를 확인할 수 있습니다. 메시지 큐와 메시지 브로커라는 개념이 사용되며 그 유명한 "아파치 카프카"가 등장합니다. 아파치 카프카는 왜 쓰는지 궁금하여 MSA 통신 패턴에 대해서 공부해보려고 합니다. 마이크로서비스 통신 패턴 동기 통신 방식 동기(synchronous) 방식은 요청(request)하면 바로 응답(response)이 오는 방식을 말한다. 바로 요청하면 응답이 오는 직관적인 방식이기 때문에 가장 많이 쓰이고 구현하기 쉽다. 그렇지만 호출을 받은 마이크로서비스에 장애가 생긴다면 어떻게 될까? 요청을 보낸 서비스는 반응이 올 때까지 기다리게 되고, 반응이 오지 않으면 계속 기다리면서 재호출하게 된다. 여러 서비스 간의 연계를 통해 업무.. 2022. 2. 27.
MSA(Micro Service Architecture) 기본 개념 MSA 구조를 사용하는 회사들이 늘어나고 있는 것 같습니다. 이에 MSA의 기본 개념은 무엇인지 공부해보려 합니다. 마이크로서비스란 무엇인가? 먼저 전통적인 시스템 구조인 모노리스(Monolith) 구조부터 살펴보자. 모노리스는 하나의 단위로 개발되는 일체식 애플리케이션이다. 그림 1과 같이 보통 3티어라 불리는 사용자 인터페이스와 데이터베이스, 서버 쪽 애플리케이션 3개 부분으로 구성된다. 티어: 보통 티어(tier)는 서버와 같은 물리적인 분리를, 레이어(layer)는 논리적인 분리를 말한다. 하나의 티어 내부를 여러 개의 논리 레이어로 나눌 수 있다. 서버 측 애플리케이션이 일체, 즉 논리적인 단일체로서 아무리 작은 변화에도 새로운 버전으로 전체를 빌드해서 배포해야 한다. 그리고 일체식 애플리케이션.. 2022. 2. 26.
반응형