Мне просто интересно, есть ли какое-либо решение для кэширования в Scala. Я ищу что-то вроде Guava в Java.
Должен ли я использовать Guava также в Scala? Есть ли обертка/сутенер в Scalaсе или что-то подобное? Любая альтернатива, более подходящая для Scala devs?
Что предлагает Guava:
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);
Мне нужно некоторое базовое управление кешем, например, в Guava.