2011-01-08 5 views
3

У меня есть 2 приложения. Первый - это веб-приложение, через которое мы предоставляем ссылочные данные. Второй - это приложение на основе ESB, в котором используются эталонные данные. Справочные данные меняются, но не очень часто. Нам нужно было кешировать справочные данные. Веб-приложение (я не владелец) использовал спящий режим. Но мое приложение на базе ESB не использовало. Мы использовали только EHCache. Когда эталонные данные изменяются независимым веб-приложением, которое должно быть отражено в приложении ESB. Мы реализовали с помощью очереди сообщений - то есть, когда сменные данные изменяются, веб-приложение отправляет сообщение в очередь сообщений. Наше ESB-приложение прослушивает это сообщение & очищает кеш & снова кэширует данные. Эти работы. Но это интенсивно работает. Как я могу использовать Hibernate для улучшения ситуации?Кэширование с использованием спящего режима

С уважением, Subhendu

+0

@Subendru Использование Hibernate не решит эту проблему. Если кеш очищается слишком часто, ваши справочные данные действительно не изменяются так часто, как вам бы хотелось. Если повторное заполнение кэша занимает слишком много времени, вам может потребоваться очистить только измененные записи кеша. –

ответ

1

не проблема, Hibernate, от того, что я могу видеть. Я бы сказал, что это больше касается кэширования. Итак, я бы рекомендовал посмотреть некоторые распределенные кэши, в частности Infinispan. Таким образом, оба приложения могут использовать один и тот же кеш и манипулировать им. Если вы просто используете Hibernate, но кеши все еще находятся на разных машинах с разными состояниями, тогда вы столкнетесь с одной и той же проблемой.

0

Одним из решений может быть использование EHCache в приложении гибернации, но вы говорите, что вы не имеете никакого контроля над ним ...

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

Смежные вопросы