[DB] API 성능 테스트, 첫 실행만 3배 느린 이유 - InnoDB Buffer Pool과 LRU 알고리즘
·
개발/DB
모아온의 아티클 조회 API의 성능 테스트를 하다가 이상한 현상을 발견했다. 같은 API를 반복 실행할 때 첫 번째만 유독 응답 속도가 느렸다. 캐시와 관련된 것이겠지 단순 추측해 볼 수는 있었지만, 정확히 어떤 매커니즘인지 궁금해졌다. 이 글에서는 해당 현상의 정체를 파헤쳐본다. 이 글에서 다루는 내용InnoDB 버퍼 풀의 구조와 역할LRU 캐시 알고리즘대상 독자MySQL 사용자, 백엔드 개발자메모리 계층 구조와 캐싱에 대한 기본 이해가 있는 사람1. 문제 상황1.1 API 성능 테스트 중 속도 차이 발견성능 테스트를 할 때, 최초 조회가 유독 시간이 많이 걸리는 현상을 흔히 발견할 수 있다. 모아온의 아티클 조회 API 성능 개선을 위해 테스트 데이터를 넣고 실험을 진행했을 때, 해당 실험의 첫 시도..