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를 이해한다.
그러나 캐시 아이템의 작성과 첫 번째 액세스 후에는 time To Live Seconds를 적용할 수 없게 되었습니까?
timeToIdleSeconds
캐시된 오브젝트를 다음 기간보다 짧은 기간 내에 캐시된 오브젝트를 유지할 수 있도록 합니다.timeToIdleSeconds
.timeToLiveSeconds
캐시된 오브젝트는 요청 횟수나 시간에 관계없이 몇 초 후에 비활성화됩니다.
그렇다고 치자timeToIdleSeconds = 3
4초 동안 요청되지 않은 개체는 비활성화됩니다.
한다면timeToLiveSeconds = 90
단수명 90초 동안 몇 밀리초가 요구되어도 90초 후에 캐시에서 오브젝트가 삭제됩니다.
둘 다 설정하면expirationTime
될 것이다Math.min(ttlExpiry, ttiExpiry)
,어디에
ttlExpiry = creationTime + timeToLive
ttiExpiry = mostRecentTime + timeToIdle
여기에 전체 소스 코드가 있습니다.
이전 1.1 매뉴얼(Google Cache에서 입수할 수 있습니다.Google Cache는 현재 문서 AFAIK보다 참조가 용이하고 더 많은 정보를 제공합니다)에서 다음을 수행합니다.
time To Idle 초
이것은 옵션 속성입니다.
유효한 값은 0 ~ 정수입니다.MAX_VALUE.
요소가 마지막으로 사용된 후 존속해야 하는 시간(초)입니다."used"는 삽입 또는 액세스됨을 의미합니다.
0은 요소가 유휴 상태인지, 즉 영원히 유휴 상태인지 확인하는 특별한 의미가 있습니다.
기본값은 0 입니다.
존속 가능 시간(초)
이것은 옵션 속성입니다.
유효한 값은 0 ~ 정수입니다.MAX_VALUE.
엘리먼트가 작성되고 나서 존속하는 초수입니다.Created는 Cache.put 메서드를 사용하여 캐시에 삽입되는 것을 의미합니다.
0은 특별한 의미가 있습니다.즉, 요소가 존속할 때까지의 시간을 체크하지 않는 것입니다.즉, 요소는 영원히 존속합니다.
기본값은 0 입니다.
언급URL : https://stackoverflow.com/questions/2583429/how-to-differentiate-between-time-to-live-and-time-to-idle-in-ehcache
'sourcecode' 카테고리의 다른 글
mysql 테이블이 mysql을 사용하고 있는지 어떻게 알 수 있습니까?ISAM 또는 InnoDB 엔진 (0) | 2022.12.06 |
---|---|
목록 요소의 가능한 모든 조합을 가져오려면 어떻게 해야 합니까? (0) | 2022.12.06 |
'==' 또는 '==='을 사용하여 문자열과 'strcmp()'을 비교합니다. (0) | 2022.12.06 |
Python REST(웹 서비스) 프레임워크 권장 사항 (0) | 2022.12.06 |
Java 패키지에서 속성 파일 로드 (0) | 2022.12.06 |