Что такое кеш второго уровня в спящем режиме?
Что такое кеш второго уровня в спящем режиме?
Ответ 1
Hibernate поставляется с тремя различными кэшами: первый уровень, второй уровень и кеш запросов.
Кэш первого уровня - сеанс Hibernate и используется для отслеживания состояния объектов во время текущего сеанса (или единицы работы). Это кеш-уровень транзакции.
Кэш второго уровня разделяет сущность на разных сеансах. Это кеш уровня SessionFactory.
Кэш запросов используется для кэширования запросов (и их параметров) и их результатов.
Рекомендуемые показания
Ответ 2
Кэш первого уровня по умолчанию включен и работает в области сеанса. Второй кеш уровня отличается от кеша первого уровня, который доступен для использования в глобальном масштабе в сеансе factory. Поэтому кеш второго уровня создается в области сеанса factory и доступен для использования во всех сеансах, которые создаются с использованием этого конкретного сеанса factory. Это также означает, что после закрытия сеанса factory весь связанный с ним кеш и диспетчер кэша также закрываются. Всякий раз, когда сеанс гибернации пытается загрузить объект, в самом первом месте он ищет кэшированную копию сущности в кеше первого уровня и, если в кэше первого уровня нет кэшированного объекта, тогда кеш второго уровня просматривается для кэшированного объекта.