我试图进一步理解caffeine cache,我想知道是否有一种方法可以为该高速缓存中填充的条目指定超时,但对其余记录没有基于时间的到期。
基本上,我希望有以下界面:put(key, value, timeToExpiry)
//输入具有指定timeToExpiry的键和值put(key, value)
//输入不带timeToExpiry的键值
我可以编写接口和管道,但我想了解如何配置咖啡因以满足上述两个需求,我也愿意拥有两个独立的咖啡因缓存示例。
我试图进一步理解caffeine cache,我想知道是否有一种方法可以为该高速缓存中填充的条目指定超时,但对其余记录没有基于时间的到期。
基本上,我希望有以下界面:put(key, value, timeToExpiry)
//输入具有指定timeToExpiry的键和值put(key, value)
//输入不带timeToExpiry的键值
我可以编写接口和管道,但我想了解如何配置咖啡因以满足上述两个需求,我也愿意拥有两个独立的咖啡因缓存示例。
2条答案
按热度按时间e5njpo681#
这可以通过使用自定义过期策略并利用无法到达的持续时间来完成。最长持续时间为
Long.MAX_VALUE
,即292年(以纳秒为单位)。假设您的记录在过期时保持不变,则您可以该高速缓存配置为,mzillmmw2#
我目前正在研究这个主题,我受到了这几篇文章的启发,我与您分享了对我来说很有效的解决方案。