Сейчас репозиторий редиса находится в слое юзкейса, но проверять, есть ли значение в кэше, планирую в миддлвари джина, который объявлен в слое контроллера. Клиентредиса создается в мейне, получается, его кроме юзкейса еще и в контроллер теперь нужно передавать? Или внутри контроллера завести отдельный клиент?
я бы внутри репозитория все сделал, чтобы для остального приложения прозрачны были всякие кешы
Но тогда каждый запрос будет в репозиторий обращаться с вопросом. есть в кэше такое значение или нет
да, а в этом разве есть что-то плохое?
я вижу так. Репозиторий - это абстракций, которая дает нам объекты, если они в нем есть. Что внутри - пофиг, ин мемори, база, файлы на диске, береста. Если делаем первую версию сервиса, то просто в репо ходим в базу. Понимаем, что медленно и надо ускорить - редактируем репозиторий, путем добавления кэша. Таким образом, слой сервиса\юзкейса\бизнеслогики вообще не меняется - код остается тем же. Просто репозиторий начинает работать быстрее
Обсуждают сегодня