Ch2 - MSA 학습 (Spring Cloud, 서킷브레이커, API Gateway, Config 등)
배운 것
제공 받은 MSA 강의를 듣고 있다. 오늘 공부한 내용은 서킷브레이커, API Gateway, 보안구성, Config 설정에 대해 공부했다. 꽤 이전부터 소프트웨어 아키텍처 방식이 Anti-fragile, Cloud Native 개념이 주목받고 있다. 시스템이 로컬에서 클라우드로 이전되었고 확장성과 안정성이 더 강화되었으며 이로 인해 지속적인 변경사항에 유연하게 대응할 수 있게 됐다.
Cloud Native를 구성하는 요소
- Microservices: 독립적으로 배포 가능한 작은 서비스들로 구성.
- Containers: 애플리케이션과 그 종속성을 캡슐화하여 일관된 환경 제공.
- CI/CD: 지속적인 통합 및 배포를 통해 빠르고 안정적인 릴리스 지원.
- DevOps: 개발과 운영 간 협업을 강화하여 자동화와 효율성을 높임.
Spring Cloud 구성
- 마이크로서비스 아키텍처: 애플리케이션을 작고 독립적인 서비스로 분리하여 개발, 배포, 확장이 용이하도록 지원한다.
- 서비스 디스커버리: Eureka Server를 통해 서비스 등록 및 검색을 지원한다. 마이크로서비스들은 Eureka에 자신을 등록하고 다른 서비스의 위치를 찾을 수 있다.
- API 게이트웨이: Spring Cloud Gateway를 통해 클라이언트 요청을 적절한 마이크로서비스로 라우팅하고 인증, 로깅 등의 공통 기능을 제공한다.
- 구성 관리: Spring Cloud Config로 중앙 집중식 구성 관리를 지원하여 여러 환경과 서비스에 걸쳐 일관된 구성을 유지할 수 있다.
- 회복성과 장애 허용: Resilience4j를 통해 Circuit Breaker 패턴을 구현하여 서비스 간 통신의 안정성을 높인다.
- 분산 추적: Spring Cloud Sleuth로 마이크로서비스 간 요청 흐름을 추적할 수 있다.
- 보안: Spring Cloud Security를 통해 OAuth2, SSO 등의 보안 기능을 제공한다.
- 로드 밸런싱: 서비스 인스턴스 간 워크로드를 분산하는 로드 밸런싱 메커니즘을 제공한다.
하루 회고
첫 번째 프로젝트 이후 새로 배우는 것들이 많아졌다. 이번 단기 심화를 신청한 이유도 MSA 관련 내용을 배우고 프로젝트를 하기 위함인데, 처음 강의를 보며 들었던 생각은, 아키텍처를 구성하기 위해 필요한 기술들과 알아야 할 개념들이 많다는 것이다. 강의를 듣는 주간이라 조금 느슨하게 하려고 했는데, 더 집중해서 공부해야겠다.
'부트캠프 > 단기심화2기 TIL' 카테고리의 다른 글
[TIL] - Spring Cloud Gateway 적용하기 (0) | 2024.11.25 |
---|---|
[TIL] - Microservice Architecture 프로젝트 만들기 (2) | 2024.11.22 |
[TIL] - AI 검증 비즈니스 프로젝트 (프로젝트 발표 및 피드백 정리) (2) | 2024.11.19 |
[TIL] - AI 검증 비즈니스 프로젝트 (SpringBoot와 S3 연동 및 업로드 API 개발) (0) | 2024.11.15 |
[TIL] - AI 검증 비즈니스 프로젝트 (Store API 개발, Google Ai API 연동) (2) | 2024.11.14 |