我只是想知道Scala中是否有可用的緩存解決方案。 我正在尋找類似於由Java中的Guava提供的東西。Scala中的輕量級緩存解決方案?
我是否也應該在Scala中使用Guava? 在Scalaz或類似的地方有包裝/皮條客嗎? 更適合Scala開發者的其他選擇嗎?
什麼番石榴規定:
LoadingCache<Key, Graph> CACHE= CacheBuilder.newBuilder()
.maximumSize(1000)
.expireAfterWrite(10, TimeUnit.MINUTES)
.removalListener(MY_LISTENER)
.build(
new CacheLoader<Key, Graph>() {
public Graph load(Key key) throws AnyException {
return createExpensiveGraph(key);
}
});
Supplier<Animal> singleAnimalCache = Suppliers.memoizeWithExpiration(animalFromDbSupplier(), 365, TimeUnit.DAYS);
我需要一些基本的緩存管理像番石榴。
你不滿意http://stackoverflow.com/questions/3651313/how-to-cache-results-in-scala? –
@ om-nom-nom這看起來不錯,我正在尋找一個memoizer(就像Guava和Supplyer一樣),但是我需要一些緩存管理,比如過期,最大緩存大小等等。我沒有在Scalaz的實現中看到這個 –
你不會是第一個在Scala中使用Guava的'Cache'的人。 –