Linux: disco/sistema de archivos como caché LRU (con caducidad transparente)

Linux: disco/sistema de archivos como caché LRU (con caducidad transparente)

Tengo un caso en el que me gustaría usar el disco local como caché LRU para archivos (activos) de un servicio web separado (algo así como S3). Si el archivo no existe en el disco, el archivo se lee a través de Internet, se escribe en el disco local y luego las solicitudes futuras pueden usar el caché local en lugar de leerlo de la fuente original.

Dado que la cantidad de datos almacenados en el servicio web excederá el almacenamiento local, deseo eliminar los archivos locales de forma automática y transparente cuando se escribe un archivo nuevo si el almacén ya está lleno. Si es posible, me gustaría evitar una situación en la que tenga una tarea cron que verifique un tiempo y caduque los archivos después de un tiempo determinado, ya que no hay ninguna razón particular para caducar los elementos de la caché según el tiempo si no se escriben archivos.

Intenté encontrar algo como tmpfs que me permita implementar algo similar como un caché puramente respaldado en disco (en SSD) de la manera más transparente posible para la aplicación que usa el caché, pero no he podido encontrar nada que implemente esta funcionalidad. (similar a lo que hace CacheFS para NFS, pero de forma más general).

Respuesta1

Podrías probar el almacenamiento en caché de archivos nginx para eso, si estás de acuerdo con la interfaz http. Veralmacenamiento en caché de contenido nginx.

información relacionada