성능 문제는 숫자에서 시작해
느리다는 말만 듣고 색인이나 캐시부터 더하지 마. 어느 질의가 얼마나 자주, 언제, 얼마 동안 실행되는지 먼저 측정해.
질의와 대기를 나눠 봐
pg_stat_statements는 호출 수와 전체·평균 실행 시간으로 질의를 정렬하고, pg_stat_activity는 지금 실행 중인 질의와 lock·I/O 같은 대기를 보여줘.
의심 순서를 세워
진단 순서는 1) 빠진 색인, 2) 잠금 경쟁, 3) 죽은 튜플과 부풀림, 4) 캐시·디스크 I/O, 5) 네트워크·풀링이야. 이 순서로 증거를 좁혀. EXPLAIN 없이 바꾸는 건 도박이야.