Use Cache
Включен ли кэш второго уровня
Стратегию параллелизма Hibernate
Политика истекания срока кэширования (такую, как тайм-аут, LRU, зависимую от ОП)
Физическое устройство КЭШа (в памяти, индексируемые файлы, кластерная репликация)
read-only - данная стратегия подходит для данных, которые никогда не меняются. Используйте её только для справочных данных.
nonstrict-read-write - не дает никакой гарантии согласованности между КЭШем и БД. Если есть возможность одновременного доступа к одной сущности, то вам необходимо настроить достаточно короткий срок истечения тайм-аута.
read-write - поддерживает изоляцию чтения подтвержденного, используя механизм временных меток. Она доступна только в некластерных средах.
transactional - доступна только в управляемой среде. Она гарантирует полную изоляцию транзакций до повторяемого чтения, если это требуется. Используйте эту стратегию для данных которых в большинстве считываются, в которых очень важно предотвратить появление устаревших данных в параллельных транзакциях, в редких случаях обновления.
EHCache
Infinispan
SwarmCache
JCache
EHCache предназначен для процессного и кластерного кэширования в одной JVM. Он может кэшировать в памяти или на диске и поддерживает опциональный Hibernate кэш результатов запроса.
Infinispan – это полностью транзакционно-репликационный кластеризованный кэш с поддержкой КЭШа запросов, предполагая, что часы в кластере синхронизированы.
SwarmCache – это кластерный кэш, основанный на JGroups. Он использует кластерное аннулирование, но не поддерживает кэш Hibernate запросов.
JCache – это полностью транзакционно-репликационный кластеризованный кэш, также основанных на JGroups. Кэш запросов Hibernate поддерживается, предполагая, что часы в кластере синхронизированы.