2011-01-26 48 views
3

guys 如何在java中组织2级缓存? 第一级 - 内存 第二级 - 文件系统java中的2级缓存

在那里我可以找到关于2级缓存实施和缓存策略配置的信息,或者你可以告诉我任何方法可以解决这个问题。

THX

回答

0

不太清楚你的问题是什么,如果你是在谈论休眠2级缓存,看到这里http://www.javalobby.org/java/forums/t48846.html

如果你只是想知道如何在Java高速缓存,那么你有几个选项 1)将数据存储在一个HashMap 2)使用Memcached的 3)在一个文件中 4.存储它),存储在数据库中它

每个人都有自己的权衡,我们需要更多地了解你的问题伊势。

0

我已经使用了OS Cache - http://www.opensymphony.com/oscache/wiki/Feature%20List.html并且发现它是实现2级缓存的最佳方法之一。

  1. 它的工作方式类似于具有键值对的散列表。

  2. 它透明地保存在内存中最常用的数据,然后交换其余的文件系统(你可以改变算法)

  3. 它扩展了真的很好。即使对大量对象的它不显示任何性能下降

  4. 它支持集群以及

  5. 它是高度可配置的

  6. 它是自由和开放源码!

2

我建议使用imcache和使用缓存加载器如下从磁盘加载必要的项目,

Cache<String,Object> yourCache = CacheBuilder. 
    concurrentHeapCache().cacheLoader(new CacheLoader<String, Object>() { 
    public Object load(String key) { 
    //code to load item from file. 
    } 
}).build();