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.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage