Autoalojar la optimización de imágenes: los compromisos, sin adornos
El consejo por defecto para las imágenes es un servicio gestionado: Cloudinary, imgix, y similares. Ese consejo suele ser correcto, y esto no es un post de “el SaaS es malo”. Es una mirada honesta al compromiso, desde un proyecto que está en el lado autoalojado de la ecuación.
Lo que los servicios gestionados realmente te dan
- Sin operaciones. Sin servidores, sin cadenas de herramientas de codificación, sin CDN que configurar. Funciona el día que te das de alta.
- Transformaciones en el borde, globalmente. Redimensionar, recortar, negociar formato al vuelo, cacheado en cientos de puntos de presencia. Difícil de igualar sin infraestructura real.
- Otro se encarga de las partes difíciles: formatos nuevos, fallos del codificador, escalar bajo un pico de tráfico.
Para un equipo pequeño sin gente de infraestructura, eso vale la pena pagarlo. No te autoalojes para demostrar algo.
Dónde el modelo gestionado se vuelve caro, y no solo en dinero
La fricción aparece en tres ejes a medida que creces:
- Coste que escala con el éxito. Los servicios de imágenes gestionados cobran por alguna mezcla de transformaciones, activos almacenados y ancho de banda. Tu factura crece con tu tráfico, y la economía unitaria la fija el proveedor, no tú. Un proyecto de aficionado es gratis; uno popular es una partida que solo sube.
- Tus imágenes salen de tu control. Cada activo, y cada subida de usuario, pasa por la infraestructura de un tercero y queda cacheado ahí. Para algunos productos eso es un problema de privacidad, cumplimiento o contrato, no una preferencia.
- Optimizas a su manera. Tienes los mandos de calidad que expone el proveedor. Si quieres apuntar a una calidad perceptual por imagen en lugar de un ajuste fijo (la diferencia entre servir calidad consistente y servir una suposición), tienes lo que la plataforma ofrece.
Nada de esto es motivo para irse el primer día. Todo es motivo de que el cálculo cambie a cierta escala.
Las opciones autoalojadas son reales ahora
Autoalojarse solía significar pegar ImageMagick a una caché y esperar. Las herramientas actuales son sólidas:
- imgproxy y Thumbor: servidores de redimensionado/transformación al vuelo que operas tú.
- wsrv.nl (images.weserv.nl): un CDN de imágenes de código abierto que puedes autoalojar.
- Patu: una API de optimización que alojas tú, con calidad ajustada por puntuación perceptual, con una capa de CDN.
Pones un CDN delante de cualquiera de ellos y tienes la experiencia gestionada, en tu propio cómputo, con un coste que es tu factura de servidor en vez de un contador por imagen.
Lo que cuesta autoalojarse de verdad
La honestidad corta en los dos sentidos. Autoalojarse no es gratis en esfuerzo:
- Lo operas tú. El tiempo de actividad, escalar bajo carga, el CDN, y mantener actualizada la cadena de codificadores son ahora cosa tuya.
- Necesitas una caché. Optimizar bien consume mucha CPU: una búsqueda de calidad sobre una foto grande no es barata. Recodificar el mismo activo en cada petición es el error clásico del autoalojamiento; todo el modelo depende de codificar una vez y servir desde caché/CDN.
- Los casos límite son tuyos. Una subida corrupta, una imagen patológica, un formato nuevo: ningún proveedor los absorbe por ti.
La recompensa es un coste predecible que no escala con tu tráfico, datos que nunca salen de la infraestructura que controlas, y la libertad de optimizar exactamente como quieras.
Cómo decidir de verdad
- Sin equipo de infraestructura, las imágenes son incidentales al producto → gestionado. Es la decisión correcta, sin disculpas.
- Las imágenes son el núcleo, el tráfico es real, o la factura por imagen ha empezado a doler → autoalójate, con una caché y un CDN.
- Subidas de usuario que no puedes enviar a un tercero, o un nivel de calidad concreto que quieres sostener → autoalójate, y es menos una decisión de coste que de control.
Patu existe para el segundo y el tercer caso: el mismo resultado que te da un servicio gestionado (AVIF primero, calidad ajustada, detrás de un CDN) en infraestructura que operas tú, con un precio de software en vez de contador. Si ese es el compromiso correcto es algo que te toca decidir a ti; este post está aquí para que lo decidas con los compromisos reales delante, no con la versión de marketing.
Patu reconoce ser una opción entre varias; los proyectos enlazados arriba son las alternativas reales, y la elección correcta depende de tu equipo, tu tráfico y tus restricciones de datos, no del último post que hayas leído.