Solução de cache leve no Scala?
Pergunto-me se existe alguma solução de cache disponível no Scala. Eu estou procurando algo como é fornecido pelo Guava em Java.
Devo usar goiaba também em Scala? Existe um empacotador / cafetão em Scalaz ou algo parecido? Qualquer alternativa mais apropriada para o Scala devs?
O que a Guava fornece:
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);
Eu preciso de algum gerenciamento básico de cache, como em Goiaba.