2016-06-12 7 views
0

캐시 크기를 구성하고 싶습니다. @EnableCaching을 사용하고 있습니다. 여기 캐시 된 저장소가 있습니다.스프링 부트 캐시 가능 캐시 크기

VendorRepository

public interface VendorRepository extends Repository<Vendor, Long> { 

@Cacheable("vendorByUsername") 
Vendor getVendorByUsername(String username); 

@CacheEvict(value = {"vendorByUsername", "vendor", "vendors"}, allEntries = true) 
Vendor save(Vendor vendor); 

@Cacheable("vendor") 
Vendor findOne(Long id); 

@Cacheable("vendors") 
List<Vendor> findAll(); 
} 

그것은 지금 잘 작동하지만 최대 캐시 크기를 설정합니다. 이 파일을 기본 구성 파일에서 어떻게 구성 할 수 있습니까?

+0

어떤 캐시 구현을 사용하는지에 따라 다릅니다. 봄 cahe는 단지 추상화 계층입니다 – Jaiwo99

+0

어떤 구현도 사용하지 마십시오. 나는 Ehcache를 사용할 것이다. 고맙습니다. – fatiherdem

답변

1

@ Jaiwo99이 맞습니다.

스프링의 캐시 추상화는 캐시의 내용 (예 : 크기 또는 이와 유사한 축퇴/만료)을 "관리하는"특정 의미 및 "하위 수준"세부 사항을 다루지 않습니다. 이러한 낮은 수준의 관리 세부 사항은 1 캐싱 공급자에서 다음 캐싱 공급자까지 매우 다양하기 때문에 이는 대부분 중요한 이유입니다.

예를 들어 일부 캐싱 제공자/구현은 일관성, 중복성 및 대기 시간을 제어하는 ​​메커니즘 등 다양한 정책으로 고도로 분산되어 있습니다. 따라서 일부 공급자는 해당 기능을 구현하지 않거나 매우 다른 "일관성"정책이있는 경우 이러한 기능을 기반으로 일관된 추상화를 제공하는 것이 매우 어려울 수 있습니다.

어쨌든이 섹션에서는 봄 참조 설명서 아마 ... 그것을 가장 잘 요약

http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#cache-specific-config

건배!

+0

명확히 해 주셔서 감사합니다. 사용하는 것은 매우 쉬운 EhCache를 사용할 것입니다. – fatiherdem