Pg-status
PostgreSQL 호스트 상태 파악용 경량 마이크로서비스
About
- PostgreSQL 클러스터의 상태를 실시간으로 감지하기 위해 설계된 사이드카형 마이크로서비스
- 호스트의 생존 여부, 마스터/리플리카 구분, 리플리카 지연 시간을 즉시 확인 가능
- 경량·고성능 구조: 메모리 사용량 약 9MiB, 요청당 낮은 CPU 부하로 초당 최대 9000 요청 처리
- 모든 데이터는 메모리 기반 응답으로 제공되어 요청 지연 최소화
- 백그라운드에서 주기적으로 PostgreSQL 호스트 상태를 폴링하고, 결과를 HTTP API로 노출(Plain/JSON 응답)
- 주요 API 엔드포인트
- /master: 현재 마스터 호스트 반환
- /replica: 라운드로빈 알고리듬으로 선택된 리플리카 반환
- /sync_by_time, /sync_by_bytes: 시간 또는 바이트 단위 동기화 상태 기준 리플리카 반환
- /hosts: 모든 호스트의 상태 목록(JSON)
- /status: 특정 호스트의 상세 상태 조회
- 일시적 데이터 불일치 가능성을 감수하고 응답 속도 최적화