디스크 캐시 불필요 정보 수집기를 사용하는 축출 방책
디스크 캐시 불필요 정보 수집기는 지정된 축출 정책을 기반으로, 디스크 캐시에서 오브젝트를 제거하는 것에 책임이 있습니다.
가비지 콜렉터는 사용 가능한 디스크에서 특정 양의 공간을 유지합니다. 이 공간은 오브젝트 캐싱에 사용되는 디스크 공간 크기를 제한하는 구성 속성으로 관리됩니다. 축출 정책이 사용 가능하도록 하려면 관리 콘솔에 있는 디스크 캐시 크기 제한(GB) 및/또는 디스크 캐시 크기 제한(항목 수) 옵션이 사용 가능하도록 설정하십시오.
- 없음: 이는 기본 정책입니다. 오브젝트는 만기되거나 무효화되는 경우에 축출됩니다.
- 임의: 만기된 오브젝트가 처음으로 제거됩니다. 디스크 크기가 하위 임계값 한계에 도달하지 않으면 임의 순서로 디스크 캐시에서 오브젝트가 선택되어 디스크 크기가 하위 임계값 한계에 도달할 때까지 제거됩니다.
- 크기: 만기된 오브젝트가 처음으로 제거됩니다. 디스크 크기가 하위 임계값 한계에 도달하지 않으면 디스크 크기가 하위 임계값 한계에 도달할 때까지 가장 큰 크기의 오브젝트가 제거됩니다.
디스크 캐시 크기 한계(GB) 및 상위 임계값은 축출을 트리거할 시기와 디스크 캐시가 거의 가득 찬 것으로 간주되는 시기를 결정합니다. 이는 사용자 지정 한계 기능으로 계산됩니다. 지정된 한계가 10GB(3GB가 최소값임)이면 캐시 서브시스템은 초기에 캐시 데이터, 종속성 ID 정보 및 템플리트 정보를 위해 크기가 1GB까지 커질 수 있는 세 개의 파일을 작성합니다. 캐시 데이터, 종속성 ID 정보 또는 템플리트 정보를 포함하기 위해 더 많은 공간이 필요할 때마다 새 파일이 작성됩니다. 이 파일은 각각 작성되는 총 파일 수가 GB 단위의 디스크 캐시 크기(이 경우 10)와 같아질 때까지 증가합니다. 새 파일의 초기 크기가 1GB보다 훨씬 적어도 동적 캐시 서비스는 항상 다음 GB로 반올림합니다.
축출은 캐시 데이터 크기가 상위 임계값에 도달했을 때 트리거하여 캐시 데이터 크기가 하위 임계값에 도달할 때까지 계속됩니다. 캐시 데이터 크기는 동적으로 계산됩니다. 다음 공식은 실제 캐시 데이터 크기 한계를 계산하는 방법을 설명합니다.
cache data size limit = disk cache size (in GB) - number of dependency files per GB - number of template files 캐시 데이터 크기
한계가 정의되면 다음과 같이 트리거 지점이 계산됩니다.eviction trigger point = cache data size limit * high threshold
size of evicted entries = cache data size * (high threshold - low threshold)- 시나리오
1
- 디스크 캐시 크기(GB 단위) = 10 GB
- 높은 임계값 = 90%
- 낮은 임계값 = 80%
초기에는 종속성 ID 및 템플리트 ID에 대해 하나의 파일이 있습니다.
이전 시나리오에서, 축출은 데이터 캐시 크기가 7.2GB에 도달할 때 시작하여 캐시 크기가 6.4GB(7.2 - 0.8)가 될 때까지 계속됩니다.cache data size limit = 10-(1+1) = 8 GB eviction trigger point = 8 * 90% = 7.2 GB size of evicted entries = 8 * (90% - 80%) = 0.8 GB - 시나리오 2시나리오 1에서, 종속성 파일이 1GB를 초과하여 더 커지면, 추가 종속성 파일이 생성됩니다. 축출 트리거 지점은 다음과 같이 동적으로 실행됩니다.
이전 시나리오에서, 축출은 데이터 캐시 크기가 6.3GB에 도달할 때 시작하여 캐시 크기가 5.6GB(6.3 - 0.7)가 될 때까지 계속됩니다.cache data size limit = 10 - (2+1) = 7GB eviction trigger point = 7 * 90% = 6.3GB size of evicted entries = 7 * (90% - 80%) = 0.7GB
- 디스크 캐시 크기(항목 단위) = 100000
- 높은 임계값 = 90%
- 낮은 임계값 = 80%
eviction trigger point = 100000 * 90% = 90000
number of entries evicted = 100000 * (90% - 80%) = 10000이 시나리오에서
축출은 캐시 항목 수가 90000에 도달할 때 시작하고
10000개의 항목이 캐시에서 축출됩니다.