16.6.2.3 데이터 폐기
memcached 인스턴스에는 두 가지 유형의 데이터 폐기가 있습니다. 첫 번째 유형은 새로운 키 / 값 쌍 memcached 인스턴스에 저장된 시점에서 적용됩니다. 적절한 슬래브에 값을 저장할 충분한 공간이없는 경우는 기존의 가장 오랫동안 사용되지 않은 (LRU) 객체가 캐시에서 제거 (삭제)되지 새 항목위한 공간이 확보됩니다.
LRU 알고리즘에 의해 활발하게 사용되지 않는 개체와 데이터가 오래되었거나 거의 무가치 일 가능성이 장기간 사용되지 않는 개체가 삭제됩니다. 그러나 memcached에 할당 된 메모리가 캐시에서 정기적으로 사용되는 필수 개체 수보다 작은 시스템에서는 많은 항목이 활성화 사용되고 있음에도 불구하고 해지 캐시에서 삭제된다 수 있습니다. 삭제 (해지 개체)의 수준을 더 잘 파악하려면 통계 메커니즘을 사용합니다. 자세한 내용은 섹션 16.6.4 "memcached 통계 가져 오기" 를 참조하십시오.
이 소거 동작을 변경하려면 memcached를 시작할 때 -M
명령 행 옵션을 설정합니다. 이 옵션을 사용하면 메모리가 소진되면 이전 데이터가 자동으로 삭제되지 않고 오류가 반환 될 수 있습니다.
두 번째 유형 해지 시스템은 캐시에 키 / 값 쌍을 삽입되었을 때 또는 캐시에서 항목을 제거 할 때 설정할 수있는 명시적인 메커니즘입니다. 만료 시간을 사용하여 캐시의 데이터가 최신이며, 응용 프로그램의 필요와 요구 사항에 맞게 구성되었는지를 효과적으로 확인할 수 있습니다.
만료 시간을 명시 적으로 설정하는 일반적인 시나리오로 사용자가 Web 사이트에 액세스 할 때 세션 데이터 캐시 등을 생각할 수 있습니다. memcached는 설정된 명시적인 만료 시간을 개체가 요청 된 현재 시간과 비교 지연 해지 메커니즘을 사용합니다. 해지되지 않는 객체 만 반환됩니다.
캐시에서 개체를 명시 적으로 제거 할 때 만료 시간을 설정 할 수 있습니다. 이 경우 해지 시간은 실제로 시간이며, 특정 키 값을 설정하려고 거부되는 기간을 나타냅니다.