Search
Write a publication
Pull to refresh

Comments 5

Спасибо за статью.

Из названия думал будет кэширование в FeignClient-е, а в статье кэшируется вызов метода в сервисе

Лучше все же вытащить кеш во вне, в Redis тот же, что бы избежать OOM приложения, ну и что бы кеш не зависимо от рантайма приложения (при перезапуске Caffeine не сохранит кеш), ну и плюс если у вас будут реплики приложений, то с Caffeine у каждого приложения будет свой кеш, а это большее потребление памяти, проблемы с рассинхронизацией кеша

Ну вы конечно писсимистически рассматриваете подход. Суть кеша же не выгрузить гиг данных из БД и сложить их в кеш (ну чтобы получить ООМ), так что вы это зря. Ну и то что редис лежит рядом это прекрасно но это не отменяет летанси запросов к нему. Caffein и Redis предназначены для немного разных вещей. Можно же использовать их оба.

В целом автора поддерживаю - кэширование инструмент очень полезный и порой незаменимый.

Единственное не понял при чем тут FeignClient)

Тут описано старое доброе кэширование результатов методов спринговых бинов) И кстати ничего нет про инвалидацию кэша. Кэшировать результат вызова метода - это одно. Но как узнать, что на сервере что-то поменялось и данные в кэше стали не валидны. Как правило если нет ответа на этот вопрос включать кэширование методов будет самоубийством.

Да и на практике никогда не встречал микросервисы в котором результаты метода на 100% предсказуемы и никогда не меняются.

Спасибо автору за пост.

Аннотацию можно навесить прямо на методы уровне интерфейса feign клиента и не будет лишних оберток вроде отдельных методов

Sign up to leave a comment.

Articles