You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
895 B
28 lines
895 B
package kr.re.etri.autoflow.common;
|
|
|
|
import com.github.benmanes.caffeine.cache.Caffeine;
|
|
import org.springframework.cache.CacheManager;
|
|
import org.springframework.cache.caffeine.CaffeineCacheManager;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
@Configuration
|
|
public class CacheConfig {
|
|
|
|
@Bean
|
|
public Caffeine<Object, Object> caffeineConfig() {
|
|
return Caffeine.newBuilder()
|
|
.maximumSize(10_000) // 최대 1만 개
|
|
.expireAfterWrite(1, TimeUnit.HOURS); // 1시간 후 만료
|
|
}
|
|
|
|
@Bean
|
|
public CacheManager cacheManager(Caffeine<Object, Object> caffeine) {
|
|
CaffeineCacheManager cacheManager = new CaffeineCacheManager("runIdCache");
|
|
cacheManager.setCaffeine(caffeine);
|
|
return cacheManager;
|
|
}
|
|
}
|