#hibernate #api #rest #ehcache
#спящий режим #API #rest #ehcache
Вопрос:
Я хотел каким-то образом уменьшить задержку, используя кэш второго уровня hibernates для кэширования пользовательских объектов, чтобы каждый вызов запроса api (с именем пользователя и паролем) не попадал в базу данных.
В принципе, я ожидаю огромного количества вызовов API в день, и я не хочу заходить в мое хранилище mysql для поиска имени пользователя и пароля в дополнение к хранилищу mongo db для извлечения фактических данных. Итак, я подумал, что использование ehcache или чего-то еще может помочь предотвратить это?
Существуют ли какие-либо другие стратегии для решения вышеуказанных проблем? В основном это будут вызовы API между машинами, которые на самом деле не основаны на браузере.
спасибо за ваше время
Ответ №1:
Лучшая практика кэширования заключается в том, что вы кэшируете информацию, которая редко меняется. Например Country, States
, и т. Д., И не желательно кэшировать транзакционные данные.
На ваш вопрос нет конкретного ответа, но я бы не предпочел кэшировать информацию для входа пользователя, поскольку я рассматриваю ее как транзакционные данные.
Подробнее о кеше гибернации читайте здесь или ознакомьтесь с API.
Комментарии:
1. Конечно, вы правы, но как можно предотвратить поиск имени пользователя и пароля при вызове rest api? Из-за отсутствия состояния я не могу придумать другого способа оптимизировать это @ManuPK