Постоянное хранилище дисков BigMemory Go занимает много места на диске
Я использую Ehcache с BigMemory Go с локальным перезагружаемым постоянным дисковым хранилищем для 6 кешей. Конфигурация кеша для каждого кеша следующая для каждого:
<cache name="CacheService"
maxElementsInMemory="200000"
eternal="false"
timeToLiveSeconds="86400"
statistics="true">
<persistence strategy="localRestartable"/>
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>
</cache>
Из профилирования мы знаем, что общий объем всех кэшей в памяти составляет менее 1 ГБ. Тем не менее, постоянное хранилище дисков в настоящее время использует около 27 ГБ дискового пространства. 27 ГБ состоят из нескольких файлов seg*.frs, размер которых составляет ~514 МБ. Кажется, что эти файлы создаются каждую минуту, а затем переносятся с удалением файлов старше ~60 минут:
-rw-r--r-- 1 jboss jboss 0 Nov 14 10:29 frs.backup.lck
-rw-r--r-- 1 jboss jboss 0 Nov 10 09:02 FRS.lck
-rw-r--r-- 1 jboss jboss 514M Nov 14 09:22 seg000013456.frs
-rw-r--r-- 1 jboss jboss 514M Nov 14 09:23 seg000013457.frs
-rw-r--r-- 1 jboss jboss 513M Nov 14 09:23 seg000013458.frs
...
-rw-r--r-- 1 jboss jboss 514M Nov 14 10:23 seg000013504.frs
-rw-r--r-- 1 jboss jboss 344M Nov 14 10:29 seg000013505.frs
Мои вопросы:
- Это ожидаемое поведение для хранилища дисков? Или есть проблема с нашими элементами cache /cache, которые генерируют большое количество сегментов?
- Есть ли способ / конфигурация для ограничения количества сегментов, которые хранятся на диске?
- Или аналогичным образом уменьшите 60-минутное окно для более частого удаления файлов?