Ehcache миграция с 2,6 до 3,00
Я пытаюсь обновить Ehcache для моего проекта с версии 2.6 до 3.0.
Любая замена для net.sf.ehcache.Element и CacheExceptionHandler.
Меньше документации по Ehcache 3, Может кто-нибудь дать несколько советов по обновлению Ehacahe до версии 3.
1 ответ
Ehcache 3 по своей сути является переделкой API, поэтому с Ehcache 2.x действительно есть большие различия.
net.sf.ehcache.Element
был полностью удален,org.ehcache.Cache
API теперь ближе (но не идентичен) кjava.util.concurrent.ConcurrentMap
, Это означает, что вы простоput(K key, V value)
а такжеV get(K key)
- нет необходимости в объекте-обертке.- Следствием этого является то, что вы больше не можете устанавливать срок действия для каждого сопоставления. Тем не менее, обычай
org.ehcache.expiry.Expiry
могут быть настроены, которые могут иметь конкретные ответы.
- Следствием этого является то, что вы больше не можете устанавливать срок действия для каждого сопоставления. Тем не менее, обычай
- Концепция чего-либо
CacheExceptionHandler
ушел В Ehcache 3 подход заключается в том, чтоCache
никогда не должен быть источником исключения. Еслиget
не удается, действительно, чтобы вернутьnull
пока ты всегда возвращаешь это до следующегоput
, Еслиput
терпит неудачу, фактически нет никакой разницы с действительнымput
с последующим немедленным выселением. Ehcache 3 следует этим принципам. Однако существуют настройки кеша, в основном, вокруг сквозного и распределенного кеша, где непротиворечивость может быть проблемой. Ожидайте, что решение этой проблемы скоро появится в линейке Ehcache 3.x.
Что касается более полной документации по теме перехода от одного к другому, то это действительно то, что еще нужно сделать.