我在我的play应用程序中使用cacheApi,我想知道我是否可以有一些超时来清理缓存?
我以if the data is in cache bring from cache, if not, so go get it from the server with an api call的身份在方法中使用cacheApi对象
现在,我希望每24小时清理一次缓存,以便能够从服务器带来新的数据。
我怎么才能完成这样的事情呢?
发布于 2017-10-22 06:24:10
我使用以下代码来配置超时:
CacheConfiguration<Long, String> cacheConfiguration = CacheConfigurationBuilder.newCacheConfigurationBuilder(Long.class, String.class,
ResourcePoolsBuilder.heap(100))
.withExpiry(Expirations.timeToLiveExpiration(Duration.of(20, TimeUnit.SECONDS)))
.build();发布于 2017-10-22 06:52:28
Play FrameworkV2.5:使用CacheApi.set方法,传入所需的过期时间,设置缓存值的离开时间。
Play Frameworkv2.6:使用SyncCacheApi.set或AsyncCacheApi.set。你也可以创建定时器并在一段时间后调用AsyncCacheApi.removeAll (但这并不清楚-你是否可以删除刚刚添加的值(比如5分钟前添加的值)?
默认情况下,过期时间是无限的-它永远不会从缓存中删除!
https://stackoverflow.com/questions/46868664
复制相似问题