Здравствуйте, pvnic, Вы писали:
P>привет!
P>встала задача выбора кэш-провайдера для hibernate.
P>согласно хибернейтовской доке есть как минимум вот такие вот провайдеры:
P>Hashtable, EHCache, OSCache, SwarmCache, JBoss TreeCache. Разница между их возможностями сведенна в таблицу 19.1 (http://www.hibernate.org/hib_docs/v3/reference/en/html/performance.html).
P>вообщем из нее не очень ясно, когда какой провайдер нужно использовать, а какой нет.
Хмм... а по мне так вполне очевидно...
EHCache/OSCache разница в следующем:
EHCache — блокируется при обновлениях, а OSCache нет.
OSCache можно кластеризовать (в таблице устаревшие данные) через JMS
http://raibledesigns.com/rd/entry/clustering_oscache
Если сразу известно, что нужно кластеризовать, то тогда выбор уже между
SwarmCache и JBoss TreeCache, тут думаю надо смотреть, т.к. разница в replication и invalidation может
быть существенна для разных usecase...
(кластеризация — это не только между серверами, но например между локальными hibernate в толстых клиентах тоже
можно попытаться использовать)