Я реализовал пакетное приложение Spring-boot Camel , запускаемое каждые 5 минут и использующее компонент camel-sql для запроса некоторых данных из таблицы.Я использую реализацию Java DSL и настраиваю свои конечные точки маршрутизации внутри RouteBuilder.configure
.Все работает нормально, как и ожидалось.Но теперь, в рамках оптимизации, я планирую кешировать некоторые из результатов запроса , которые не часто меняются, как некоторые глобальные таблицы конфигурации, таблицы часовых поясов местоположения и т. Д.
Я просмотрел документацию Camel EHcache , но не получил правильного понимания стандартного способа реализации.
Мои ожидания похожи на следующие
Предположим, моя маршрутизация:
from(timercomponent)
.to(SqlComponent1)
.process(ResultProcessor::processResult1)
.to(SqlComponent2) // needs to be cached
.process(ResultProcessor::processResult1)
....
...
Я не хочу, чтобы SqlComponent2
всегда нажимал DB , и он должен использовать кэшированное значение с первоговыполнение с сроком действия 1 неделя .
Также я просто хотел узнать, какая реализация кэша является лучшей в этом сценарии.