簡體   English   中英

java中的2級緩存

[英]2-level cache in java

如何在Java中組織2級緩存?

  • 第一級 - 記憶
  • 第二級 - 文件系統

我可以在哪里找到有關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();  

看起來使用帶有覆蓋到磁盤選項的選項2將適用於OP。 這兩個網址可以提供幫助: http//memcached.org/http://ehcache.org/

我已經構建了一些可以滿足您需求的東西。

https://github.com/enryold/onion-cache

不清楚你的問題是什么,如果你在談論hibernate二級緩存,請參見http://www.javalobby.org/java/forums/t48846.html

如果您只想知道如何在java中緩存,那么您有幾個選項1.)將數據存儲在HashMap中2.)使用Memcached 3.)將其存儲在文件中4.)將其存儲在數據庫中

每個人都有自己的權衡,我們需要了解更多關於你的問題的建議。

我使用過操作系統緩存 - http://www.opensymphony.com/oscache/wiki/Feature%20List.html並發現它是實現2級緩存的最佳方法之一。

  1. 它的工作方式類似於具有鍵值對的散列映射。

  2. 它將最常用的數據透明地存儲在內存中,然后將其余數據交換到文件系統(您可以更改算法)

  3. 它非常好地擴展。 即使對於大量對象,它也不會顯示任何性能下降

  4. 它也支持群集

  5. 它具有高度可配置性

  6. 它是免費的開源!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM