dobecom.log
로그인
dobecom.log
로그인
[MSA] 1. 마이크로서비스 아키텍처 개요
steve
·
2024년 2월 18일
팔로우
0
msa
0
Backend
목록 보기
8/17
MSA 학습 로드맵
Micro Service Architecture 개요 및 패턴 이해
(Part 1~5)
MSA 개발 설계 기법 이해 및 도메인 주도 개발 방법 학습
(Part 6~10)
메시지 브로커 활용한 이벤트 주도 설계 구현 및 마이크로서비스 개발
(Part 11~15)
개요
MSA의 배경에 대해 이해한다
MSA에 대한 개념을 알아본다
MSA의 배경
성공한 인터넷 기업들과 비즈니스 민첩성
비즈니스 Agility가 크다
비즈니스 환경에 민첩하게 대응할 수 있음
서비스를 변경하는 빈도가 매우 잦음 (Amazon 초당 1.5회 배포, 2014 기준)
클라우드 인프라 환경이 보편화되어 MSA 구축에 효율적
유연한 Scailing (원하는 만큼, 필요한 시점에 제공)
전체 시스템의 인스턴스 확장이 아닌, 사용량이 몰리는 일부 기능의 리소스만 변경되게 가능
마이크로서비스란
여러개의 서비스 조각
각기 독립적인 기능을 제공하며, 저장소도 다른 서비스와 격리됨
독립적으로 수정, 배포 가능
Polyglot 한 형태로 시스템 아키텍처 구성 가능
마이크로서비스 성공을 위한 조건
조직 : 특정 도메인에 자율적인 권한과 책임을 지는 DevOps 조직 (개발 + 운영)
인프라 : 언제나 쉽게 확장 가능한 유연한 인프라 구성 (On demand 확장성, 탄력성)
자동화 : 개발 지원 도구 자동화, CI/CD
개발 프로세스 : 피드백 기반의 개발 프로세스, 반복/점진적인 애자일 프로세스
개발 문화 : 공유/협업하고 학습하여 계속 진화하는 개발 문화
설계 방식 : 데이터 중복, 결과적 일관성 추구
실패 감지 및 대응을 위한 실시간 모니터링 체계 필요
서킷 브레이크 패턴
마이크로서비스 성숙도
MSA는 Trade-off(상충 관계)이다
예시 (B2B)
- 배포 주기가 B2C 대비 긴 대신에 트랜잭션 안정성을 크게 고려해야 한다 → 항상 MSA가 정답이 아님
조직의 성숙도와 마이크로서비스의 성숙도는 같이 가야 한다
독립 배포를 위한 것이면 매크로 서비스로 시작해도 좋다
steve
팔로우
이전 포스트
Redis pipelining 성능 개선
다음 포스트
[MSA] 2. 아키텍처 종류
0개의 댓글
댓글 작성
관련 채용 정보