Я бы рекомендовал хранить данные в вашей базе данных, но кэшировать их с помощью популярной библиотеки кэширования в памяти, например кофеин или Google Guava . Эти библиотеки позволяют быстро настроить кэш в памяти, который может обновлять sh данные время от времени (каждые 15 минут; каждый час; каждый день; все, что вы хотите). Ваш программный код может попадать в кеш сколько угодно раз, это всегда будет быстро. В библиотеке есть logi c для периодического обновления кеша.
Если ваши данные особенно статичны c, например, конфигурация приложения, которую вы можете изменять раз в несколько месяцев / лет, вы также можете рассмотреть возможность ее перемещения в конфигурационный файл stati c. Spring Boot имеет широкий спектр изящных функций , встроенных для загрузки внешней конфигурации (JSON или YAML) и привязки ее к объектной модели на основе Java. Я считаю, что аннотация @ConfigurationProperties
особенно полезна. Внешнюю конфигурацию можно либо упаковать в fat-jar, либо загрузить извне через Spring Config Server. Основное преимущество этого подхода заключается в том, что ваша конфигурация будет храниться в вашей системе контроля версий (GIT). Вы также можете выполнить проверку вашей конфигурации во время загрузки, которая может выявить ошибки, которые в противном случае были бы обнаружены, когда ваша служба работает. Наконец, ваша конфигурация больше не зависит от базы данных.