2026/01/07 2

[Cloud] 마이크로서비스 아키텍처(MSA)란?

이번 주제는 MSA 아키텍처이다.MSA에 대해 제대로 공부해보며, 과거에 MSA구조로 진행했었던 프로젝트에 많은 부족함이 있었다는 걸 알게되었다.이번에는 MSA나 Monolitic 구조의 차이와 기본적인 개념 보다,MSA의 개발원칙과 CRUD와 MSA의 관계성에 대해서 알아보려고한다. MSA 개발 원칙( 12 Factors ) 1. 코드 베이스 버전 관리가 가능한 하나의 코드베이스와 이를 통한 다양한 배포버전관리는 개발과 운영이 동일해야한다Cloud Native인 경우 엄청나게 많은 Pod가 존재하기 때문에 이전의 버전을 확인하기 어렵기 때문에 버전 관리 필수정리: Git과 같은 버전 관리 시스템을 이용해 관리해야한다는 의미이다. 2. 종속성 명시적으로 선언되고 분리 된 종속성항상 재현이 가능한 빌..

Cloud 2026.01.07

[디자인 패턴] 서킷 브레이커(Circuit Breaker)란?

서킷 브레이커는 MSA 아키텍처를 공부하다보면 자연스럽게 만나게 되는 디자인 패턴이다.예를 들어, 쇼핑몰에서 결제 시스템에 장애가 발생하여 응답이 지연되고, 사용자에게는 무한 로딩이 걸리는 상황이 있다고 하자.쇼핑몰 서버에는 이런 요청들이 쌓여 결국 쇼핑몰 앱 전체 서버가 마비 되어, 구경하던 다른 사용자들도 앱이 튀기는 문제가 발생하게 된다. 이렇게 한 서비스의 장애가 서비스 전체로 장애가 전파되는데 이런 문제를 방지하는 패턴이 바로 서킷 브레이커라고 한다. 서킷 브레이커 (장애 전파)서킷브레이커(Circuit Breaker)란?특정 서비스 호출이 계속 실패할 때, 일시적으로 호출을 차단해서 장애가 다른 서비스로 번지는 것(연쇄 장애)를 막는 패턴왜 필요한가?MSA는 서비스가 서로 호출하는 구조라 하..

카테고리 없음 2026.01.07