Spring Boot

Spring을 사용한 캐싱

Spring을 사용한 캐싱: @Cacheable, @CacheEvict, @CachePut, CacheManager, 프로바이더 (EhCache, Redis, Caffeine)

25 면접 질문·
Mid-Level
1

Spring에서 @Cacheable 어노테이션의 주요 역할은 무엇입니까?

답변

@Cacheable은 메서드의 결과를 캐시하여 동일한 파라미터로 반복 실행되는 것을 방지합니다. 이는 데이터베이스 쿼리나 외부 API 호출 같은 비용이 큰 작업의 성능을 크게 향상시킵니다. 동일한 인자로 자주 호출되는 읽기 메서드에 @Cacheable을 사용하여 리소스 부하를 줄이세요.

2

Spring Boot 애플리케이션에서 캐싱 지원을 활성화하기 위해 필요한 어노테이션은 무엇입니까?

답변

@EnableCaching은 Spring Boot에서 캐싱 지원을 활성화하며 설정 클래스(보통 @SpringBootApplication이 붙은 메인 클래스)에 배치해야 합니다. 이 어노테이션이 없으면 @Cacheable 같은 캐시 어노테이션은 무시됩니다. 다른 것이 정의되지 않으면 Spring Boot는 자동으로 간단한 인메모리 CacheManager(ConcurrentMapCacheManager)를 구성합니다.

3

@Cacheable과 @CachePut의 주요 차이점은 무엇입니까?

답변

@Cacheable은 결과가 이미 캐시되어 있으면 메서드 실행을 건너뛰지만, @CachePut은 항상 메서드를 실행하고 새 결과로 캐시를 갱신합니다. 읽기(반복 계산 방지)에는 @Cacheable을, 메서드 실행을 우회하지 않고 캐시를 갱신해야 하는 업데이트 작업에는 @CachePut을 사용하세요.

4

Spring에서 @CacheEvict 어노테이션의 역할은 무엇입니까?

5

다른 것이 정의되지 않은 경우 Spring Boot가 기본으로 구성하는 CacheManager는 무엇입니까?

+22 면접 질문

다음 면접을 위해 Spring Boot을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기