Amazon Aurora는 AWS에서 제공하는 고성능 관계형 데이터베이스 엔진으로, 뛰어난 확장성과 내결함성을 제공한다. 특히 Aurora는 기본적으로 복제본(Replica) 구조를 포함하고 있어 읽기 요청 분산에 매우 유리하다. 이를 위해 Aurora는 다양한 유형의 엔드포인트(Endpoint) 를 제공한다.
Aurora의 엔드포인트 종류
클러스터 엔드포인트 (Cluster Endpoint) | 쓰기 요청을 위한 엔드포인트로, 항상 Primary(Writer) 인스턴스로 라우팅된다. |
리더 엔드포인트 (Reader Endpoint) | 읽기 요청 전용 엔드포인트로, 클러스터에 있는 복제본 인스턴스들 중 하나로 자동 분산되며, 일반적으로 균등하게 로드밸런싱된다. |
인스턴스 엔드포인트 (Instance Endpoint) | 특정 DB 인스턴스에 직접 연결할 때 사용하는 엔드포인트. 테스트, 모니터링 등의 목적에 적합하다. |
리더 엔드포인트의 로드밸런싱 기능
Aurora의 리더 엔드포인트(reader endpoint) 는 읽기 요청을 처리할 수 있는 복제본 인스턴스가 여러 개 있을 경우, 이들 간에 요청을 자동으로 분산(load balancing) 해준다.
- 내부적으로는 라운드로빈(Round-robin) 방식에 기반한 분산이 이루어진다.
- 단순한 분산 외에도, 인스턴스의 상태(헬스 체크)나 부하 등을 고려하여 보다 효율적인 라우팅이 가능하다.
- 애플리케이션은 하나의 고정된 리더 엔드포인트만 사용하면 되므로, 구현이 간단하고 유연하다
- 예시: reader.cluster-xyz.ap-northeast-2.rds.amazonaws.com
기존의 RDS (MySQL, PostgreSQL 등)는 리더 엔드포인트와 같은 자동 로드밸런싱 기능을 제공하지 않기 떄문에 아래와 같은 방법들이 필요하다
- 애플리케이션에서 수동으로 복제본 리스트를 관리하여 직접 로드밸런싱 구현
- Route 53을 활용한 가중치 기반 분산
- ProxySQL, HAProxy 등 프록시 서버 도입
반면 Aurora는 AWS가 직접 설계한 데이터베이스이기 때문에, 이러한 로직이 내장되어 있으며 개발자가 별도로 분산 로직을 구현할 필요가 없다.
'AWS' 카테고리의 다른 글
AWS DataSync: 온프레미스 데이터를 클라우드로 이전 (0) | 2025.06.05 |
---|---|
Amazon Aurora 병렬 쿼리(Parallel Query) (0) | 2025.06.04 |
Amazon EBS 볼륨 타입 정리 (0) | 2025.06.02 |
DNS 레코드와 별칭(Alias) (0) | 2025.06.01 |
API vs HTTP: 웹 통신 개념 비교 (0) | 2025.05.31 |