Я предлагаю вам настроить кэш, настроенный по стратегии eviction .
Например. (внутри вашей конфигурации кеш-контейнера)
<local-cache name="cacheEntity1" >
<eviction max-entries="1500" strategy="LIRS"/>
</local-cache>
<local-cache name="cacheEntity2" >
<eviction max-entries="3500" strategy="LIRS"/>
</local-cache>
Если вы хотите sh переполнить записи на диске, вы можете добавить в локальный кеш постоянное хранилище.
Например.
<local-cache name="cacheEntityX" >
<eviction max-entries="3500" strategy="LIRS"/>
<persistence passivation="false">
<file-store path="/mydata/FileCacheStore-LocationX" />
</persistence>
</local-cache>
Выселение обычно используется вместе с хранилищем кеша (записи не теряются навсегда при выселении). Выселение только удаляет записи из памяти, но не из кеша. См. Infinispan Docs
Вы можете выбрать другую стратегию выселения (NONE, UNORDERED, LRU, LIRS, MANUAL). Имейте в виду, что некоторые стратегии устарели в последних версиях Infinispan. стратегии выселения
Если вы хотите прикрепить к записям продолжительность жизни и / или максимальное время простоя, Expiration - ваш выбор. срок действия
Например.
<local-cache name="cacheEntityX" >
<eviction max-entries="3500" strategy="LIRS"/>
<expiration lifespan="1000" max-idle="500" interval="1000" />
<persistence passivation="true">
<file-store path="/mydata/FileCacheStore-LocationX" />
</persistence>
</local-cache>
Надеюсь, это поможет.