У меня проблемы с пониманием того, как кэшировать реактивные потоки, используя библиотеку Spring-Data-Starter-Cache. Из таких учебных пособий, как
https://www.baeldung.com/spring-webflux-cachable, я вижу, что они используют либо Mono.cache , либо Caffine.newbuilder , чтобы создать какой-то тип объекта Cache, которым нужно управлять. Похоже, что проблема проистекает из @cachable только кэширование обертки, а не фактических результатов
Код: Выделить всё
// application.yml
spring:
cache:
type: caffeine
caffeine:
spec: maximumSize=1000,expireAfterAccess=3600s
// Code logic
@Cacheable(value = "stuff")
public Mono getInfo(int id) {
return infoProvider.getInfo(id);
}
Что мне нужно сделать, чтобы исправить это, чтобы кэшировать значение, излучаемое моно ? Почему бы и нет?
Подробнее здесь:
https://stackoverflow.com/questions/797 ... h-caffeine