2. 연결 관리 및 자동 장애 조치
Amazon RDS Proxy의 주요 이점 중 하나는 데이터베이스 연결을 효율적으로 관리하고 애플리케이션에 자동적이고 투명한 장애 조치를 제공하는 능력입니다.
2.1. 연결 풀링 및 다중화
RDS Proxy는 설정된 데이터베이스 연결 풀을 유지 관리합니다. 애플리케이션이 연결을 요청하면 프록시는 사용 가능한 기존 연결을 재사용하거나 새 연결을 설정합니다. 이는 새 연결을 설정하는 오버헤드를 줄이고 데이터베이스 서버 로드를 낮게 유지합니다.
다중화를 통해 여러 클라이언트 연결이 더 적은 수의 데이터베이스 연결을 공유할 수 있습니다. 이는 서버리스 함수와 같이 연결을 자주 열고 닫는 애플리케이션에 특히 유용합니다.
2.2. 자동 장애 조치 및 애플리케이션 탄력성
다중 AZ 배포에서 기본 데이터베이스 인스턴스가 실패하면 RDS Proxy는 자동으로 대기 인스턴스로 연결을 라우팅합니다. 애플리케이션이 새 엔드포인트에 대한 연결을 다시 설정할 필요가 없으므로 이 장애 조치 프로세스는 직접 연결보다 훨씬 빠릅니다(종종 몇 초 이내).
애플리케이션은 안정적인 프록시 엔드포인트에 계속 연결되어 코드 변경 없이 애플리케이션 탄력성을 보장합니다.
// 애플리케이션 연결 문자열 예시 (의사 코드)
const dbConfig = {
host: 'my-rds-proxy.proxy-xxxx.us-east-1.rds.amazonaws.com', // RDS Proxy 엔드포인트
user: 'myuser',
password: 'mypassword', // Secrets Manager에서 검색됨
database: 'mydatabase'
};
// 애플리케이션 로직은 dbConfig를 사용하여 프록시에 연결합니다.