- 캐시(Cache)
- 데이터 또는 문서의 복사본을 임시 저장하는 장소로 빠르게 접근 가능
- 자주 사용되거나 반복적으로 요청되는 데이터를 빠르게 로드 → 사용자 경험 향상, 서버 부하
- 캐시의 종류
- 브라우저 캐시: 사용자의 브라우저에 데이터를 저장
- 서버캐시: 서버 측에서 데이터를 저장
- 분산캐시: 여러 서버에 걸쳐 데이터를 저장
- Redis와 캐싱
- Redis
- 고성능 키-값 저장소로 널리 사용되는 분산 캐시 시스템
- 메모리 내 데이터 저장과 빠른 읽기/쓰기 작업을 지원
- Redis를 사용한 캐싱의 장점
- 속도: 메모리에 데이터 저장 → DB조회보다 빠름
- 경제성: 자원사용 줄임
- 확장성: 네트워크 통해 접근 가능 → 여러 서버에서 데이터 공유 가능
- Redis
@Cacheable 을 통해서 사용
@Cacheable(cacheNames = "Best30")
public List<PostResponseForMainDto> getPostBest30(Pageable pageable) {
return postRepository.findTop30Posts(pageable);
}
@Cacheable(cacheNames = "view30")
public List<PostResponseForMainDto> getPostView30(Pageable pageable) {
return postRepository.findView30Posts(pageable);
}
redisConfig 작성
@EnableCaching
@Configuration
public class RedisConfig {
'web 개발 > spring' 카테고리의 다른 글
spring scheduler 사용 (0) | 2024.07.02 |
---|---|
<spring> AOP(Aspect-Oriented Programming) (0) | 2024.05.25 |
<Spring> 프로젝트 배포하기 (0) | 2024.05.20 |
<spring> IOC(제어의 역전), DI(의존성 주입) (0) | 2024.05.18 |
<spring> spring framework 계층 (controller, service, repository) (0) | 2024.05.18 |