我们将身份验证令牌存储在JCS中,在重启服务器时,缓存上下文丢失。为了克服这个问题,在停止服务器时,决定将JCS值列表存储到一个文件中,并在重新启动时读取该文件并将其存储回JCS。请帮助我将JCS缓存列表存储到文件或任何其他可能的解决方案中。
我不能改变将令牌存储在缓存中的正确实现。
cache = JCS.getInstance("uniqueKey");
if (cache.get(key) == null) {
cache.put(key, value);
}发布于 2016-09-10 19:53:12
在缓存中存储值时,您可以添加一个辅助的indexedDiskCacheFactory。这将在cache.ccf文件中配置的目录中存储密钥和数据。只需在您的cache.ccf中添加以下代码片段:
已预先确认要缓存的区域:
jcs.region.outputCache=DC
jcs.region.outputCache.cacheattributes.DiskUsagePatternName=UPDATE索引磁盘路径
jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC.attributes.DiskPath=d:/cache/dev/raf
jcs.auxiliary.DC.attributes.MaxKeySize=100000`这应该会起作用,一旦您重新启动服务器,缓存将从文件中获取值。
https://stackoverflow.com/questions/38772318
复制相似问题