

헤맨 만큼 고도화된, Runway DB 인프라 구성 개선기
Runway의 PostgreSQL 인프라를 K8s 환경에 맞게 개선한 과정을 정리했습니다. Bitnami HA의 Split Brain 문제를 겪은 뒤 CloudNativePG로 전환해 자동 복구와 안정성을 높였습니다.
새로운 기술 블로그가 추가되었어요


Runway의 PostgreSQL 인프라를 K8s 환경에 맞게 개선한 과정을 정리했습니다. Bitnami HA의 Split Brain 문제를 겪은 뒤 CloudNativePG로 전환해 자동 복구와 안정성을 높였습니다.


RDS PostgreSQL의 autovacuum 지연과 XID 랩어라운드 위험을 줄이기 위해 postgres_get_av_diag() 활용법을 소개했습니다. Lambda, EventBridge, SES를 연결해 차단 원인을 주기적으로 감지하고 알림하는 방법을 설명했습니다.


Amazon DataZone와 OpenLineage를 활용해 RDS View 테이블의 데이터 계보를 작성하는 방법을 소개했습니다. pg_get_viewdef와 SQL Parser로 입력·출력 테이블을 추출한 뒤 Lambda로 DataZone에 반영했습니다.


Spring Boot와 Hibernate 업그레이드 후 KST 환경의 LocalTime 변환 오류를 분석했습니다. 나노초를 제거하는 Converter로 임시 대응하고 통합 테스트 필요성을 확인했습니다.


스프링부트 업그레이드 후 하이버네이트의 시간 변환 로직 변화로 LocalTime 조회 오류가 발생했습니다. 임시로 Converter를 적용해 나노초를 제거하며 장애를 우회했습니다.

쿠버네티스 클러스터에서 경량 PostgreSQL을 운영하는 사례를 소개합니다. 기존 VM 기반 RDB 운영과 다른 배포·운영 맥락을 다룹니다.


App 테스트 자동화의 흔들리는 신뢰성을 정량 지표로 관리하며 개선했습니다. PostgreSQL과 Grafana로 Fail률과 수행시간을 추적해 근본 원인을 찾아 해결했습니다.
신규 서비스 꿀템 피드를 만들기 위해 개념 정의부터 테이블 설계, ERD 구성까지의 과정을 소개했습니다. 확장성과 정합성을 고려해 커뮤니티 기능과 데이터 구조를 설계했습니다.
이 게시물은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.


Testcontainers로 Kafka·PostgreSQL·Spring 애플리케이션을 함께 구동해 사용자 시나리오 통합 테스트를 구성했습니다.\nGitHub Actions 트리거로 배포 이미지 생성 뒤 테스트를 실행해 QA 부담을 줄이는 방식을 소개합니다.


Testcontainers로 Kafka, PostgreSQL, Spring 앱을 함께 띄워 실제 사용자 흐름에 가까운 통합테스트를 구성했습니다. 서버 간 제약 불일치로 생길 수 있는 버그를 QA 전에 조기에 찾고, 배포 후 자동 검증까지 연결했습니다.


CockroachDB를 쿠키런: 킹덤의 메인 데이터베이스로 선택한 이유와 운영 시 고려할 점을 정리했습니다. 분산 구조, 복제, MVCC, 핫스팟 대응 같은 핵심 개념도 함께 설명했습니다.


주문서 다중 수정에서 변경 덮어쓰기를 막기 위해 revision 검증과 비관적 잠금을 함께 적용했습니다. 품목 스냅숏과 JSONB 이력으로 과거 주문 내용과 변경 기록을 보존했습니다.


Athena와 Redshift 직접 조인의 비용·성능 문제를 데이터마트로 완화하려 했습니다.\nPostgreSQL dblink와 자동 생성 프로시저로 Redshift 데이터를 선별 동기화했습니다.

PostgreSQL MVCC에서 발생하는 dead tuple과 Autovacuum의 동작 기준을 설명했습니다. 테이블별 임계값·비용 설정과 모니터링으로 Data Bloat를 줄이는 방법을 제시합니다.