MSA의 장점
기술적 장점
독립적 배포
- 각 서비스를 개별적으로 배포
- MSA에서는 전체 애플리케이션을 빌드하고 배포 안하고, 해당 서비스만 배포 가능
개별 확장성
기술 다양성
- 서비스별로 적합한 기술 스택을 선택 가능
- 실시간 처리 : Node.js
- 복잡한 비즈니스 로직 : Java
- 머신러닝 기능 : Python
- 데이터도 동일
- 관계형 데이터 : PostgreSQL
- 문서형 : MongoDB
- 캐시 : Redis
장애 격리
- 한 서비스의 장애로 전체 시스템을 마비하지 않음
- Circuit Breaker과 결합하면 장애 전파를 더욱 효과적으로 차단
비즈니스 장점
빠른 시장 대응
- 배포 주기가 짧아지면서 새로운 기능을 빠르게 출시 가능
실험과 혁신 촉진
- 작은 서비스 단위로 A/B 테스트나 카나리 배포로 일부 사용자에게만 새 버전을 적용 가능
비용 최적화
- 트래픽이 적은 서비스는 리소스를 적게 할당하고, 많은 서비스는 많이 할당 가능