
목차캐시와 Jpa네트워크를 통해 데이터베이스 접근하는 시간 비용은 애플리케이션 서버 내부에서 메모리에 접근하는 시간 비용보다 수만~수십만 배 이상 비싸다. 따라서 조회한 데이터를 메모리에 캐시하여 데이터베이스 접근 횟수를 줄이면 성능을 획기적으로 개선할 수 있다. Jpa에서 캐시를 제공하는 방법으로 1차 캐시와 2차 캐시가 있다. Jpa 1차 캐시@Transaction으로 DB 트랜잭션을 사용하는 경우, 대상 엔티티는 영속성 컨텍스트에 포함된다. 영속성 컨텍스트 내부에는 엔티티를 보관하는 저장소가 있다. 이를 1차 캐시라고 한다. 데이터베이스 기본 키로 기준으로 캐시되어 있는지 확인한다. 트랜잭션을 커밋하거나 플러시를 호출하면 1차 캐시에 있는 엔티티의 변경 내역을 데이터베이스에 반영(동기화)한다. (=..
Jpa 2025. 3. 2. 17:28