РЕДАКТИРОВАТЬ: В зависимости от имени области кэша, установленной во время выполнения запроса, карта с этим именем региона должна быть настроена в конфигурации 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.) Будут игнорироваться, даже если вы установите.