Как отличить время жизни и время простоя в ehcache
документы на ehache говорит:
timeToIdleSeconds: Sets the time to idle for an element before it expires.
i.e. The maximum amount of time between accesses before an element expires
timeToLiveSeconds: Sets the time to live for an element before it expires.
i.e. The maximum time between creation time and when an element expires.
Я понимаю timeToIdleSeconds
но означает ли это, что после создания и первого доступа к элементу кэша,timeToLiveSeconds больше не применяется ?
3 ответа:
timeToIdleSeconds
позволяет хранить кэшированный объект до тех пор, пока он запрашивается в периоды корочеtimeToIdleSeconds
.timeToLiveSeconds
сделает кэшированный объект недействительным после этого много секунд, независимо от того, сколько раз или когда он был запрошен.скажем,
timeToIdleSeconds = 3
. Затем объект будет признан недействительным, если он не был запрошен в течение 4 секунд.если
timeToLiveSeconds = 90
, то объект будет удален из кэша через 90 секунд, даже если он был запрошен несколько миллисекунды на 90-й секунде своей короткой жизни.
Если вы установите как
expirationTime
будетMath.min(ttlExpiry, ttiExpiry)
, гдеttlExpiry = creationTime + timeToLive ttiExpiry = mostRecentTime + timeToIdle
исходный код здесь.
с старая документация 1.1 (доступно в кэше Google, который легче просматривать и более информативен, чем текущие документы AFAIK):
timeToIdleSeconds
Это необязательный атрибут.
допустимые значения-это целые числа от 0 до целого числа.МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ.
Это количество секунд, что элемент должен жить, так как он был последний раз использовал. Используемые средства вставлены или доступны.
0 имеет особое значение, которое заключается не в проверке элемента на время до простаивает, то есть будет простаивать вечно.
значение по умолчанию-0.
timeToLiveSeconds
Это необязательный атрибут.
допустимые значения-это целые числа от 0 до целого числа.МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ.
Это количество секунд, что элемент должен жить, так как он был создан. Созданные средства вставляются в кэш использование кэша.класть метод.
0 имеет особое значение, которое заключается не в проверке элемента на время до живи, то есть она будет жить вечно.
значение по умолчанию-0.