2010-06-23 16 views
9

Memcached dice que usa una cola de LRU para realizar el desalojo (con algunas reglas basadas en tamaños de losa mezclados). Cuando dicen menos recientemente utilizado, ¿se refieren a los almacenados menos recientemente o a los que se leyeron menos recientemente? Su documentación parece ambigua aquí.¿Qué significa en realidad LRU de Memcached?

Respuesta

16

En todas partes que he visto el término usado, LRU se ha referido al último acceso (leer o escribir) en lugar de la última tienda.

This article confirma:

El algoritmo LRU garantiza que el objeto que se elimina es uno que es o bien ya no está en uso activo o que se utilizó hace mucho tiempo que es de datos es potencialmente anticuado o de poco valor .

Pasa a hablar sobre los artículos que están en "uso activo", lo que para mí implica que es acceso en lugar de almacenamiento ... no hablaría de algo "almacenado activamente" a menos que ' re a la mitad de realmente escribirlo.

+1

+1: Used = Leer o escribir –

+0

¿El algoritmo LRU eliminará las entradas que no se han utilizado durante un cierto período de tiempo o los elementos caducados? Las entradas que están expirando no se eliminan en ese momento exacto, sino cuando la próxima vez que alguien intente acceder a él (AFAIR). ¿El algoritmo LRU (también) tendrá en cuenta la caducidad de las claves? – zaphod1984

+0

@ zaphod1984: Eso depende completamente de la implementación. Si preguntas sobre memcached en particular, no lo sé. –

Cuestiones relacionadas