RDS Proxy
- 완전 관리형, 서버리스, 오토 스케일링, HA(고가용성)-다중 AZ
- 데이터베이스 연결을 풀링하고 공유 -> 확장성
- 효율성 ↑ <- 리소스 자원의 stress ↓, 개방된 연결, 시간초과 최소화
- RDS(MySQL, PostgreSQL, MariaDB, MS SQL Server), Aurora(MySQL, PostgreSQL) 지원
- 대부분의 앱에서 코드 변화 ❌
- VPC에서만 접근 가능(보안)
- Lambda와 함께 많이 사용된다.
문제점
- DB로 들어오는 연결이 많다면 CPU, RAM 등 데이터베이스 리소스의 부담 ↑, open connection ↑, 시간 초과 발생
- 특히 람다의 경우 순식간에 수만개로 증식하며 생겼다 사라질 수 있음
Proxy를 통한 해결방법
- RDS 프록시를 사용하면 한 번 설정된 데이터베이스 연결을 풀 내에서 유지하고 필요에 따라 재사용-> 연결 설정에 소요되는 시간과 리소스를 절약할 수 있다. -> 효율적인 관리 ⭕
- Primary 데이터베이스에 장애 발생 시 프록시가 Standby로 재라우팅한다. -> RDS, Aurora 장애조치 시간 최대 66%까지 단축
- IAM 인증을 강제하고 Secrets Manager에 안전하게 자격증명을 저장한다.
- VPC를 통해서만 접근이 가능하므로 보안이 우수하다.