Настройка Hazelcast Hibernate Query Cache Region - PullRequest
1 голос
/ 09 апреля 2020

Я использую Hazelcast 3.11 в режиме P2P и Hibernate-5.3. Я настроил области кэша второго уровня с политиками истечения срока действия для моих объектов. Сейчас я пытаюсь настроить политику истечения срока действия для моих кэшей запросов, но проблема в том, что я не могу узнать имя региона по умолчанию для кэша запросов и не уверен, что его можно настроить с помощью карт Hazelcast. Я попробовал следующие конфиги, но безуспешно:

    eviction-policy: LFU
    in-memory-format: BINARY
    name: org.hibernate.cache.internal.*
    max-size: 1000
    max-size-policy: PER_NODE
    time-to-live: 10
    time-to-idle: 10

И

    eviction-policy: LFU
    in-memory-format: BINARY
    name: default-query-results-region
    max-size: 1000
    max-size-policy: PER_NODE
    time-to-live: 10
    time-to-idle: 10

Можно ли настроить Query Cache Region с помощью hazelcast?

1 Ответ

2 голосов
/ 09 апреля 2020

РЕДАКТИРОВАТЬ: В зависимости от имени области кэша, установленной во время выполнения запроса, карта с этим именем региона должна быть настроена в конфигурации Hazelcast. Например, будет использоваться default-query-results-region, и его необходимо настроить для следующего запроса:

session.createQuery(QUERY_STRING).setCacheable(true);

и custom-name для следующего:

session.createQuery(QUERY_STRING).setCacheable(true).setCacheRegion("custom-name");

Необходимо настроить конфигурация карты либо программно, либо в hazelcast. xml, так что:

<map name="default-query-results-region">
    <max-size>1000</max-size>
    <time-to-live-seconds>10</time-to-live-seconds>
</map>    

<map name="custom-name">
    <max-size>1000</max-size>
    <time-to-live-seconds>10</time-to-live-seconds>
</map>

Имейте в виду, что в Hazelcast L2 C результаты запроса не кэшируются в распределенной карте, а в локальной карте. Базовая c процедура очистки выполняется периодически для выселений на основе только по max-size и time-to-live критериям. Другие параметры (политика удаления, формат в памяти, время простоя и т. Д. c.) Будут игнорироваться, даже если вы установите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...