2012-03-14 3 views
1

Я ищу Java-структуру, которая в основном выполняет какое-то многоуровневое кэширование с некоторыми действиями, необходимыми между этими уровнями.Java - cache/resource framework

Вот пример, чтобы объяснить мой случай использования:

  1. Я wolud нравится создавать какие-то графики (img01-img05) динамически.
  2. Эти графики зависят от файла commen XML (xml01), который обновляется каждые несколько минут (например, 5 минут).
  3. img05 необходим еще один файл (xml02), который будет создан
  4. теперь я хочу, чтобы получить img01, который вызывает:
    1. извлечение из xml01
    2. и извлечение данных для необходимых данных для img01
  5. теперь я хочу, чтобы получить img02, который вызывает: (извлечение из xml01 не требуется, поскольку он кэшируется)
    1. и извлечение данных для Необходимые данные для img02
  6. теперь я хочу, чтобы получить img05, который вызывает: (извлечение из xml01 не требуется, поскольку он кэшируется)
    1. извлечение из xml02
    2. и извлечение данных для необходимых данных для img02
  7. после нескольких минут Гото 4)

Там может быть мо это сложный случай использования, чем этот упрощенный пример.

Есть ли что-то, что могло бы помочь мне с этими требованиями?

+0

вы также можете прочитать о кэшировании, предоставленной гуавы? – Scorpion

ответ

1

Я хотел бы сделать следующее:

  • Использование Spring
  • Создание interfaces для получения ваших ресурсов изображений и XML.
  • Создание classes, которые обеспечивают такую ​​функциональность
  • Используйте Ehcache и это spring annotation или ehcache-spring-annotations обеспечить кэширование.

Ваш код тогда полностью свободен от логики кэширования, а продолжительность кэширования может быть настроена путем настройки Ehcache.