#RDS · 10개
PostgreSQL 쿼리가 락에 걸려 멈출 때
RDS PostgreSQL을 운영하다 보면 평소 수십 밀리초에 끝나던 UPDATE가 갑자기 몇 분씩 응답이 없는 상황을 만난다. CPU도 멀쩡하고 디스크 I/O도 한가한데 특정 테이블을 건드리는 쿼…
논리적 복제로 PostgreSQL 최소 중단 업그레이드
메이저 버전 업그레이드는 미루기 쉬운 일이다. RDS의 in-place 업그레이드는 버튼 한 번으로 끝나는 대신 그 시간만큼 DB가 멈춰 있고, 데이터가 크면 중단이 수십 분으로 늘어난다. 서비스를…
락 없이 PostgreSQL 인덱스 추가하기
운영 중인 테이블에 인덱스 하나 추가하려다 서비스가 멈춘 경험이 한 번쯤 있을 것이다. 가입자가 늘면서 느려진 쿼리를 잡으려고 인덱스를 거는데, 그냥 CREATE INDEX 를 때리면 테이블 쓰기가…
RDS 페일오버 후 자바가 옛 IP로 붙을 때
DB 페일오버 자체는 몇십 초면 끝난다. 그런데 애플리케이션만 한참을 옛 IP에 매달려 있다가 결국 재기동으로 푸는 경우를 현장에서 자주 본다. 스탠바이로 승격은 됐고 DNS도 새 IP를 가리키는데…
pg_stat_statements로 느린 쿼리 Top N 뽑기
운영 중인 서비스가 느려질 때 어디서부터 봐야 할지 막막한 경우가 많다. 특정 화면 하나가 아니라 서버 전체가 무겁게 느껴지면 슬로우 쿼리 로그만으로는 그림이 안 잡힌다. 나는 이럴 때 개별 쿼리 …
RDS Proxy로 Lambda 커넥션 폭주 잡기
서버리스로 API를 옮기고 나면 트래픽이 몰리는 시간대에 꼭 한 번은 만나는 에러가 있다. 애플리케이션 로그에는 문제가 없는데 DB 쪽에서 FATAL: too many connections 또는 E…
AWS 완전관리형 서비스(Fully Managed), 관리형 서비스(Managed Service)
AWS 서비스 설명을 보면 완전관리형 서비스(fully managed service) 라는 단어가 많이 등장한다. 완전관리형 서비스는 어떤 의미인지? 그냥 관리형 서비스와 어떤점이 다른지 알아보도록…
RDS PostgreSQL이 R5 인스턴스 지원 시작
1. 소식 RDS PostgreSQL이 R5 인스턴스 지원을 시작했다는 소식이다. 2. R5 인스턴스란 메모리 최적화 인스턴스 EC2 Nitro 시스템 기반 vCPU : 메모리 비율 - 1:8 r5…
[RDS] Failover 시, WAS 또는 Java Demon에서 Connection Pool 다시 맺게하는 방법.
EC2에서 Tomcat 과 같은 WAS나 JAVA Demon을 이용하여서 RDS와 연결을 하여 사용하는 경우가 많다. RDS가 Failover가 되면, WAS에서 이를 감지하지 못해서 Failove…
AWS RDS의 Multi AZ 구성에 대하여
1. 개요 RDS와 Multi-AZ(Availability Zone)에 대한 정리이다. Multi-AZ는 Amazon RDS에서 데이터베이스의 가용성을 높이기 위해 사용하는 구성 방식이다. 단일 A…