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 caffeineConfig() { return Caffeine.newBuilder() .maximumSize(10_000) // 최대 1만 개 .expireAfterWrite(1, TimeUnit.HOURS); // 1시간 후 만료 } @Bean public CacheManager cacheManager(Caffeine caffeine) { CaffeineCacheManager cacheManager = new CaffeineCacheManager("runIdCache"); cacheManager.setCaffeine(caffeine); return cacheManager; } }