- 백엔드 아키텍처 기초 1
- 백엔드 아키텍처 기초 2 - 응답시간 개선
- 백엔드 아키텍처 기초 3 - 웹 계층 수평적 확장
- 백엔드 아키텍처 기초 5 - 메시지 큐, 로그, 메트릭, 자동화
- 백엔드 아키텍처 기초 6 - 데이터베이스 규모 확장
기초 3에서는 무상태 웹 계층을 가지면서 유연하고 확장성 있는 아키텍처 구조를 살펴보았다.
이제는 전 세계에서 접속한다고 했을 때를 생각해보자.
전 세계에서 사용한다면?
🚀 데이터 센터
- 장애가 없는 상황에서 사용자는 가장 가까운 데이터 센터에서 처리됨
- 이를 지리적 라우팅(geoDNS-routing)이라고 함
- 한국 사용자는 Korea DC1, 미국 사용자는 USA DC1 으로 안내됨
- 만약 데이터 센터 하나가 장애 발생 시, 다른 데이터 센터로 모든 트래픽이 전송됨
⚠️ 다중 데이터 센터 구성 시 주의사항
- 올바른 데이터 센터로 트래픽을 보내는 효과적인 방법 찾기
- GeoDNS는 사용자에게서 가장 가까운 데이터센터로 트래픽을 보내야 함
- 데이터 동기화(synchronization)
- 데이터 센터마다 별도의 데이터베이스를 사용할 때, 장애 발생 시 다른 데이터 센터에 데이터가 쌓이고 원래 데이터센터에는 데이터가 없을 것임
- 이런 상황을 막으려면 여러 데이터 센터에 걸쳐 다중화를 해야 함 (넷플릭스 다중화 참고)
- 테스트와 배포
- 여러 데이터 센터를 사용하도록 시스템이 구성된 상황일 때, 웹 사이트 or 애플리케이션을 여러 위치에서 테스트 해봐야 함
- 자동화된 배포 도구는 모든 데이터 센터에 동일한 서비스가 설치되도록 하는 데 중요한 역할을 함
위와 같은 주의사항(분산 시스템의 여러 문제들)을 해결하기 위해 메시지 큐(message queue)를 사용하기도 한다.
다음은 메시지 큐를 살펴보자.
'개발 etc' 카테고리의 다른 글
백엔드 아키텍처 기초 6 - DB 규모 확장 (0) | 2023.07.18 |
---|---|
백엔드 아키텍처 기초 5 - 메시지 큐, 로그, 메트릭, 자동화 (0) | 2023.07.17 |
백엔드 아키텍처 기초 3 - 웹 계층 수평적 확장 (0) | 2023.06.27 |
백엔드 아키텍처 기초 2 - 응답시간 개선 (0) | 2023.06.26 |
AWSome Day 온라인 컨퍼런스 후기 (2) | 2023.06.21 |