首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >临时或几分钟内缓存变量

临时或几分钟内缓存变量
EN

Stack Overflow用户
提问于 2013-05-13 13:58:02
回答 2查看 236关注 0票数 0

如何在Java中临时或几分钟缓存变量?

我需要临时使用一个变量几分钟,因为命中数据库总是会造成巨大的性能影响。

问题是我有一个可以由用户更改的db配置值。这样的更改需要在不重新启动服务器的情况下捕获。

因此,在Java中找到一个关于如何临时或几分钟缓存变量的选项。因此,在5或10分钟的间隔之后,我们可以不断地清除缓存。

EN

回答 2

Stack Overflow用户

发布于 2013-05-13 14:02:40

大多数cache框架都能够配置Cache的生存时间。

例如,如果您使用的是EHCache,配置将如下所示:请注意,300指的是5分钟

代码语言:javascript
复制
<cache name="testCache1"
 eternal="false"
 timeToLiveSeconds="300"
 overflowToDisk="true"
 diskPersistent="true"
 diskExpiryThreadIntervalSeconds="300"
 maxEntriesLocalDisk="10000"
/>

如果用户更改了配置,并且系统能够检测到它,您还可以使缓存无效。

代码语言:javascript
复制
CacheManager manager = CacheManager.getInstance();
cache = manager.getCache(cacheName);
cache.remove(key);

or 

cache.removeAll();
票数 0
EN

Stack Overflow用户

发布于 2013-05-13 14:04:32

来自JCF的东西。

LinkedHashMap和定制removeEldestEntry怎么样?

需要注意的是,该方法仅在puts上调用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16515668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档