пользовательская перезагрузка кэша в java на weblogic

#java #spring #caching #weblogic11g

#java #spring #кэширование #weblogic11g

Вопрос:

У меня есть требование кэшировать объекты java xml-компонента путем чтения xml-файлов из базы данных. Я использую HashMap в памяти для поддержки моих объектов Java. Я использую spring для DI и Weblogic 11g app server.

Не могли бы вы, пожалуйста, предложить мне механизм перезагрузки кэша при обновлении XML-файлов.

Ответ №1:

Для этой цели вы можете использовать weblogic p13n cache вместо того, чтобы использовать свою собственную HashMap для кэширования объектов java. Вам нужно будет настроить p13n-cache-config.xml файл, который содержит TTL, максимальное значение и т.д. для вашего кэша.

Переходя к первому пункту, кэш будет автоматически перезагружен по истечении времени TTL. Для ручной очистки кэша вы можете реализовать что-то вроде сервлета, который вы можете использовать непосредственно из своего браузера (можете ограничить его для определенного URL). В этом сервлете очистите кэш, который вы хотите перезагрузить.

weblogic p13n cache также предоставляет вам метод очистки кэша с поддержкой кластера, если вам это нужно, в случае, если вы хотите использовать свою собственную хэш-карту для кэширования, предоставьте метод обновления для этой хэш-карты и очистите объекты java, которые вы хотите перезагрузить, а затем вызовите метод создания кэша.