의문점 공부하기/☁️ 클라우드 2

☁️ 12factor 란?

12factor는 클라우드 애플리케이션을 개발하는 데 유용한 방법론 중 하나입니다. 이 방법론은 클라우드에서 애플리케이션을 개발하는 데 있어 다음과 같은 12가지 원칙을 제시합니다. 코드베이스: 코드 저장소를 하나만 유지한다. 종속성: 종속성을 명확하게 선언하고, 격리된 환경에서 실행한다. 설정: 설정 정보는 환경변수를 통해 전달한다. 백엔드 서비스: 백엔드 서비스는 호스트 이름으로 연결한다. 빌드, 릴리스, 실행: 빌드, 릴리스, 실행 단계는 분리되어야 한다. 프로세스: 애플리케이션은 하나 이상의 무상태 프로세스로 실행된다. 포트 바인딩: 포트 바인딩을 통해 애플리케이션에 접근한다. 동시성: 애플리케이션은 동시성을 고려하여 설계되어야 한다. 확장성: 애플리케이션은 수평적으로 확장 가능해야 한다. 흐름:..

☁️ Saga 패턴이란?

커리어리에서 MSA에 대한 내용을 읽다가 발견한 Saga패턴, 이건 무엇이며, 어디에 쓰는걸까? saga 패턴은 분산 애플리케이션에서 일관성을 유지하고 여러 마이크로서비스 간의 트랜잭션을 조정하여 데이터 일관성을 유지하는 데 도움이 되는 장애 관리 패턴이라고 한다 DB는 하나인데 라이브중 장애가 발생한다면 ? 이라는 문제 때문/ 그래서 DB는 보통 미리 동기화 해놓거나, 백업을 해놓는것이 매우 중요하다 아래는 gpt의 대답 클라우드 사가(Saga) 패턴은 분산 시스템에서 여러 서비스 간의 트랜잭션 처리를 보장하기 위한 패턴. 클라우드 환경에서 여러 서비스가 분산되어 동작하고, 각 서비스가 독립적으로 데이터를 관리하는 경우에 사용 일반적으로 트랜잭션은 모놀리틱 아키텍처에서 단일 데이터베이스에서 처리되지만 ..