Leichte Caching-Lösung in Scala?
Ich frage mich nur, ob es in Scala eine Caching-Lösung gibt. Ich suche so etwas wie Guava in Java.
Soll ich Guava auch in Scala benutzen? Gibt es ein Wrapper / Pimp in Scalaz oder so ähnlich? Welche Alternative ist für Scala-Entwickler besser geeignet?
Was Guava bietet:
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);
Ich brauche eine grundlegende Cache-Verwaltung wie in Guava.