Привет. Подскажите по кешированию. Есть feign клиент, который обращается к внешнему сервису, нужно реализовать двухуровневое кеширование следующим образом: сначала идет поиск объекта в кэше, если там нужного нет, то поиск продолжается в локальном репозитории (монго), и потом в случае неудачного поиска клиент обращается к внешнему сервису и тянет оттуда данные.
Однако, нужно это все "сделать настройками кеша, а не просто if-ами".
2 уровня через @Cacheable
полагаю можно сделать, но как завязать кеширование и репозиторий?
Есть мысля, что решается оно через бин CacheManager-а, но ничего похожего по теме не нашел.
Можно написать свою имплементацию CacheManager, использующую монгу как key-value store (я так понял вам именно это и нужно), а в качестве основного бина кеш-менеджера выставить CompositeCacheManager, добавив туда 2 другие имплементации кеш-менеджеров (1я (например на коффеине) и 2я ваша на монге).