MSA

Dev/MSA

[MSA] MSA관련 개념들과 Circuitbreaker-Pattern에 대한 이해

MSA DevOps란? Development(개발)과 Operations(운영)이 합쳐진 합성어로, 개발과 운영이 분리되지 않은, 개발과 동시에 운영을 할 수 있는 조직, 그 문화를 의미한다. CI란? Continuous Integration의 약자로, 지속적 통합이다. 자동으로 통합하고 테스트하고 레포트로 남기는 활동을 의미한다. CD란? Continuous Development or Continuous Delivery의 약자로, 지속적 배포이다. 실행 환경에 자동으로 배포하는 것인데, Continuous Development과 Continuous Delivery의 차이점은 다음과 같다. Continuous Development는 담당자의 승인 절차가 필요 없는, 배포까지도 실시간으로 진행하는 것이다...

Dev/Design Pattern

[Design Pattern] Event-Bus 패턴이란?(Client-Server패턴과 비교)

Event-Bus패턴이란?(Client-Server패턴과 비교) Event-Bus패턴이란 이벤트를 비동기식 호출을 사용해 전달하고 처리하는 패턴이다. MSA에서 Event-Bus패턴을 사용하는 이유 탄력성이 높은 클라우드 플랫폼 환경에서 서비스가 다운되거나 시스템을 더 확장해야 할 때 사용할 수 있는 효과적인 방법들을 Event-Bus패턴이 제공하기 때문이다. Event-Bus패턴과 Client-Server패턴의 비교 장점 비동기 처리 방식으로 인해 많은 요청이 발생할 경우 동기 방식에 비해 병목현상이 줄어든다. 클라이언트-서버 패턴에서 동기식 방식으로 구현했을 경우, 서버에서 응답이 올 때 까지 클라이언트가 대기하기 때문에 많은 요청이 들어올 경우 병목현상으로 인해 응답이 지연될 수 있지만, Event..

Dev/MSA

[MSA] 2PC기법, SAGA패턴의 종류와 동작 예제에 대해서 알아보기

MSA SAGA패턴을 사용하기 전, 2PC기법 2PC기법이란, Two-Phase Commit의 약자로, 트랜잭션을 커밋할지, 롤백할지에 대해 분산 원자적 트랜잭션에 관여하는 분산 알고리즘의 하나이다. 2PC에서 하나의 노드는 조정자와 트랜잭션의 대상이 되는 참가자들로 구성된다. 조정자는 커밋할 트랜잭션을 만드는 노드이며 참가자는 조정자가 보낸 트랜잭션을 커밋하거나 되돌린다. 즉, 분산환경에서 데이터 신뢰성 향상을 위한 방안이다. 2PC기법의 단점 조정자에 오류가 발생한다면, 모든 트랜잭션이 조정자가 복구될 때 까지 지연된다는 단점, 조정자에 오류가 발생해 응답을 받지 못하면 참가자 전체가 블로킹에 빠지게 된다는 점이 있다. SAGA패턴이란? 2PC기법의 단점을 극복하기 위해 SAGA패턴이 등장했다. SA..

friendshipkim97
'MSA' 태그의 글 목록