캐시 제거
모든 캐시에 대해 애플리케이션의 데이터 사용량을 신중하게 고려하여 캐시 크기를 미리 추정해야 합니다. 그러나 캐시에는 저장 공간 제한이 있으며 데이터가 캐시에 영원히 남아 있으면 결국 가득 차게 됩니다. 이를 처리하려면, NCache의 Cache Eviction 기능을 활용할 수 있습니다.
Eviction에서 캐시가 가득 차면 NCache 새로운 수신 데이터를 수용하기 위해 사용량이나 우선순위에 따라 기존 데이터를 제거하기로 결정합니다. 제거는 구성된 데이터 비율을 제거하여 캐시 크기를 제한하면서 캐시 작업을 원활하게 합니다.
NCache 퇴거에 대한 다양한 정책을 제공합니다. 이러한 정책은 캐시가 가득 차면 제거될 데이터를 결정합니다.
우선순위 기반 캐시 제거
주의 사항
이 기능은 다음에서도 사용할 수 있습니다. NCache Professional.
이 캐시 제거 정책을 사용하면 캐시가 덜 중요한 데이터를 먼저 제거할 수 있습니다. 캐시 데이터를 다양한 우선순위로 분류할 수 있는 경우 이 제거 정책은 확실한 선택입니다. 캐시 항목을 캐시에 추가하는 동안 캐시 항목에 우선순위가 지정됩니다. 다음 6가지 우선순위 수준에서 우선순위를 지정할 수 있습니다.
- 낮은
- 정상 아래
- 표준
- 보통 이상
- 높은
- 제거 불가능 - 이 우선순위 수준은 캐시 항목이 제거되지 않아야 하며 다음을 통해서만 구성될 수 있음을 지정합니다. NCache API.
가장 최근에 사용된(LRU)
이 제거 정책을 사용하면 더 이상 사용되지 않는 데이터를 캐시에서 제거할 수 있습니다. 데이터는 마지막 액세스 시간을 기준으로 제거됩니다. 최근에 접근한 데이터에 비해 오래 전에 접근한 데이터가 퇴거에 가장 적합한 후보이다. 캐시에서 데이터를 가져오거나 업데이트할 때 액세스 시간이 업데이트됩니다.
가장 적게 사용됨(LFU)
이 제거 정책을 사용하면 자주 사용되지 않는 데이터를 캐시에서 제거할 수 있습니다. 데이터는 사용 빈도에 따라 제거됩니다. 예를 들어 항목에 5번 액세스한 경우 20번 액세스한 항목보다 퇴거에 더 적합한 후보입니다.
퇴거 금지
주의 사항
이 기능은 다음에서만 사용할 수 있습니다. NCache Enterprise.
다양한 정책과 함께 퇴거를 해제하는 또 다른 옵션이 있습니다. 이 경우 캐시가 가득 차면 캐시는 들어오는 데이터 추가 요청이 모두 거부되는 동안 데이터를 제거하지 않습니다.
퇴거율
또한 제거 비율, 즉 캐시에서 데이터를 제거해야 하는 비율을 지정할 수도 있습니다. 제거는 제거가 트리거되면 캐시에서 구성된 비율의 데이터만 제거합니다.
캐시가 거의 가득 참 경고
캐시가 약 80% 정도 차서 제거가 필요한 경우, NCache Windows의 이벤트 뷰어와 캐시 로그 파일 모두에 이벤트를 기록합니다.
데이터 대량 제거
제거 중에 제거되는 캐시 항목의 수는 캐시 크기 및 제거 비율에 따라 엄청날 수 있습니다. 이것이 퇴거를 통해 데이터를 대량으로 제거하는 이유입니다. 대량 작업의 크기는 다음 위치에 있는 캐시 서버 구성 파일을 통해 구성할 수 있습니다. NCache 다음과 같이 설치:
- . NET: Alachisoft.NCache.서비스.exe.config 에 위치한 %NCHOME%/빈/서비스
- .NET Core Windows: Alachisoft.NCache.Service.dll.config 에 위치한 %NCHOME%/빈/서비스
- .NET Core Linux: Alachisoft.NCache.Daemon.dll.config 에 위치한 /고르다/ncache/bin/서비스
- 자바 윈도우: Alachisoft.NCache.Service.dll.config 에 위치한 %NCHOME%/빈/서비스
- 자바 리눅스: Alachisoft.NCache.Daemon.dll.config 에 위치한 /고르다/ncache/bin/서비스
마찬가지로 서비스 구성 파일을 사용하여 두 대량 제거 작업 간의 지연을 구성할 수도 있습니다.
클러스터 환경에서 제거
. 파티션 된 그리고 파티션-복제본 토폴로지에서 데이터 배포는 해싱 알고리즘을 기반으로 합니다. 각 노드는 데이터를 분할하므로 각 노드는 해당 데이터를 제거할 책임이 있습니다. 그러나 Partition-Replica의 복제본 노드는 데이터 자체를 제거하지 않습니다. 데이터가 활성 노드에서 제거될 때 복제본에서 자동으로 제거됩니다.
. 복제 토폴로지에서 모든 노드는 동일한 데이터 집합을 가지므로 클러스터 조정자만 제거를 담당합니다.
. 거울 캐시에는 두 개의 노드만 있으며, 하나는 활성이고 다른 하나는 수동입니다. 따라서 활성 노드는 전체 캐시에 대한 제거를 담당합니다.