轻量级Java对象缓存API

回答:

我正在寻找Java内存对象缓存API。有什么建议吗?您过去使用过什么解决方案?

回答:

现在,我只是在使用地图:

Map cache = new HashMap<String, Object>();

cache.put("key", value);

回答:

我需要扩展缓存以包括以下基本功能:

  • 最大尺寸
  • 生存时间

但是,我不需要更复杂的功能,例如:

  • 来自多个进程的访问(缓存服务器)
  • 持久性(到磁盘)

回答:

内存中缓存:

  • Guava CacheBuilder-活动开发。请参阅此演示文稿。
  • LRUMap-通过API配置。没有TTL。并非专门用于缓存。
  • whirlycache -XML配置。邮件列表。上次更新时间:2006年。
  • cache4j -XML配置。俄语文档。上次更新时间:2006年。

企业缓存:

  • JCS-属性配置。广泛的文档。
  • Ehcache -XML配置。广泛的文档。到目前为止,根据Google的点击量最受欢迎。

回答:

EHCache非常好。您可以创建一个内存缓存。查看他们的代码示例,以获取创建内存中缓存的示例。您可以指定最大大小和生存时间。

EHCache确实提供了一些高级功能,但是如果您对使用它们不感兴趣,那就不要。但是很高兴知道,如果您的需求发生变化,它们就会在那里。

这是内存中的缓存。用代码创建,没有配置文件。

CacheManager cacheManager = CacheManager.getInstance();

int oneDay = 24 * 60 * 60;

Cache memoryOnlyCache = new Cache("name", 200, false, false, oneDay, oneDay);

cacheManager.addCache(memoryOnlyCache);

创建一个可容纳200个元素且ttl为24小时的缓存。

以上是 轻量级Java对象缓存API 的全部内容, 来源链接: utcz.com/qa/401130.html

回到顶部