¿Qué es un proxy de imágenes?
Como indica su nombre, un proxy de imágenes es ante todo un proxy, es decir un intermediario entre el agente que hace la petición y el servicio que devuelve la petición.
En el caso de los proxies de imágenes se especializan en servir imágenes, pueden cachear las peticiones de las imágenes; en realidad esto lo suelen hacer también la mayoría de proxies que cachean los recursos estáticos de peticiones de tal forma que la petición de ese recurso no llega al servicio.
Además de los servicios habituales que hacen los proxies un proxy de imágenes está especializado en manipular archivos estáticos de imágenes; esto es recortar, escalar, difuminar, etc...
En este gist de github tienen publicado una comparativa de proxies de imágenes.
¿Cuando se debe usar un proxy de imágenes?
Para entender mi interes por los proxies de imágenes tengo que explicar la conyuntura, en un reciente proyecto en el que estoy el cliente tiene una carpeta de imágenes derivadas (imágnes generadas a partir de una imagen original y que han sido recordatas, escaladas, cambiado la gravedad del punto focal, etc...) en total había 150 Gb de imágenes en una carpeta y en la carpeta de imágenes derivadas había 135 GB, si a esto le sumamos vídeos, audios, etc... se ponía todo en cerca de medio Tera.
Y me puse a buscar como se podría evitar almacenar tantos recursos, en algunos casos de contenido muy antiguo que hacía años que nadie consultaba pero que la imagen derivada se había generado y se guardaba.
Por otro lado, cuando tienes proyectos tan grandes con una gran cantidad de contenidos (cerca de 250K entradas), con sus correspondientes imágenes incluso los servicios para "generar" las imágenes derivadas en caso de borrado de las mismas puede suponer un problema de recursos.
Así que el resumen sería que un proxy de imágenes es interesante tener cuando se tiene una gran cantidad de imágenes e imágenes derivadas. La propia naturaleza del proxy permite configurar el tiempo que el proxy almacena dicha imagen (o imagen derivada) en memoria. En caso de las imágenes derivadas una vez se ha borrado de la memoria del proxy desaparecen como tal y no vuelven a generarse hasta que no sean solicitadas de tal forma que estaremos sirviendo/generando únicamente aquellas imágenes derivadas de los contenidos "más consultados".
Un proxy de imágenes también agiliza la respuesta a la hora de devolver recurso lo que consigue descargar de responsabilidades al servidor central que gestiona el proyecto.
También puede ser interesante usar un proxy de imágenes si en vez de un único portal grande se tienen varios portales de tal forma que se "centraliza" en un punto las peticiones de entrada y salida de las imágenes así como las mismas políticas de cacheo de las imágenes para todos los portales.
Top comments (0)