Usando CDN con Image Resizer Script

Estoy usando un redimensionador de imágenes para generar imágenes en mi sitio web. ¿Es posible usar un CDN en la situación actual?

El redimensionador de imágenes toma la ruta del archivo de la imagen y genera la imagen deseada. Ahora, incluso si uso un CDN, el script para cambiar el tamaño de la imagen está alojado en mi servidor. Entonces, cada solicitud de imagen pasa por mi servidor. ¿Usar un CDN me beneficiará de alguna manera?

preguntado el 12 de junio de 12 a las 18:06

Proporcione más información por favor. -

necesita decirle a CDN la ruta de su imagen y CDN tomará la imagen y la almacenará. -

3 Respuestas

El objeto almacenado en caché en las CDN se codifica en el URI de solicitud, por lo que debería beneficiarse de una CDN siempre que su aplicación no genere aleatoriedad en las URL. Si su solicitud de imagen se ve así

/resizer/200x100/thing.jpg
# ...or...
/resizer/thing.jpg?size=200x100

Luego, la CDN lo almacenará en caché para todas las solicitudes posteriores.

Respondido el 14 de junio de 12 a las 03:06

CloudFront comenzó a admitir el parámetro de solicitud desde el mes pasado, como resultado, las dos formas que ha mencionado funcionarán en CloudFront. - yudong li

mi imagen no terminaría en jpg. la URL de ejemplo es nombre-dominio/imagen.php?offset=1&height=360&color=fff&width=416&cropratio=1.155:1&image=/img/content/14062012mandirabedi/mandira_bedi_latest_hot_jewellery_shoot_2.jpg. ¿Funcionará esto para este tipo de URL? ¿Y qué es "crear aleatoriedad en las URL"? user1400532

Estaba usando una ruta de ejemplo ya que no proporcionaste una. La URL que acaba de proporcionar funcionará. El objeto almacenado en caché en la CDN está codificado en esa URL. Por aleatoriedad, me refiero a incluir una identificación de sesión o un token o un código de ruptura de caché (que he visto en mi vida profesional). No se aplica a la URL que acaba de proporcionar, así que no se preocupe. - mqsoh

Si su servidor y script son lo suficientemente rápidos, entonces usaría su código de servidor. Esto significa que puede jugar con el script si necesita agregar funciones personalizadas. Si tiene algún problema grave o desea muchas más opciones que una CDN puede proporcionar, cambie.

Respondido el 12 de junio de 12 a las 18:06

Respuesta corta: No. Si su servidor cambia el tamaño de las imágenes sobre la marcha, todavía funciona como un cuello de botella y los beneficios de la CDN se pierden esencialmente.

Tres soluciones con las que puede sentirse cómodo:

  1. Haga que el script de cambio de tamaño de la imagen se ejecute una vez al cargar la imagen y cree todos los tamaños de imagen necesarios, luego almacene todo de manera lógica en el CDN. (Solución razonable. Desventaja: muy rígido, agregar nuevos tamaños de imagen requiere un trabajo considerable).

  2. Haga que se ejecute el script de cambio de tamaño de la imagen (es decir, cambie el tamaño de una sola imagen y cárguela en la CDN) a pedido, pero solo si la imagen aún no existe en la CDN. (Puede almacenar una lista de imágenes creadas en una base de datos o, preferiblemente, si es posible, usar el técnica de imagen predeterminada de notación de objetos) (Solución genial. Desventaja: a los navegadores antiguos no les gusta la etiqueta de objeto, código no estándar, aunque válido).

  3. Cambie de CDN, use un servicio de CDN más maduro que le permita manipular archivos multimedia a través de la API. ex: http://cloudinary.com/ (Solución de navegación fluida. Desventaja: no es tan barato como los CDN no inteligentes que existen, pero en la mayoría de los casos apenas debería sentirlo, y le ahorrará una tonelada de codificación).

Espero que esto ayude, me encantaría saber qué solución eligió.

contestado el 23 de mayo de 17 a las 13:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.