Tema

Cómo almacenar en caché las imágenes OG

Almacenar en caché las imágenes OG significa servir una vista previa social generada previamente desde una CDN en lugar de volver a renderizarla en cada compartido. FastOG almacena en caché imágenes idénticas en el edge durante un año: la misma URL devuelve el PNG en caché sin contar contra tu cuota y con una latencia prácticamente nula, por lo que la mayor parte del tráfico OG de un sitio nunca llega al renderizador.

Por qué el almacenamiento en caché es importante

Una compartición social provoca una solicitud por parte del rastreador de la plataforma. Si cada compartición se volviera a renderizar, gastarías cuota y latencia en contenido idéntico. Un almacenamiento en caché agresivo —clave basada en el contenido de la imagen— convierte "cada compartición cuenta como 1 render" en "la primera compartición cuenta como 1 render, todas las demás son gratis".

El modelo basado en contenido que lo hace funcionar

FastOG utiliza URLs firmadas por contenido: la URL es una función pura de los parámetros. Título idéntico + plantilla idéntica → URL idéntica. Eso significa:

  • El edge de FastOG mantiene la imagen bajo la URL.
  • El mismo contenido compartido 10 000 veces → un renderizado, un recuento de cuota, 9 999 aciertos de caché.
  • Cambia el contenido → URL diferente → un nuevo renderizado.
GET /api/v1/og?title=Hello&template=default&key=...&s=...   → render (1 quota count), then
GET /api/v1/og?title=Hello&template=default&key=...&s=...   → cached (0 counts, instant)
GET /api/v1/og?title=Changed&template=default&key=...&s=... → render (1 quota count)

Cabeceras de caché de FastOG

FastOG devuelve Cache-Control: public, max-age=31536000, immutable (un año) para las imágenes renderizadas. Una portada se sirve desde el edge de FastOG en dos niveles: la caché de renderizado delante de fastog.com, y un almacén de objetos duradero detrás de ella. Las peticiones repetidas se responden sin volver a renderizar, y X-FastOG-Worker-Cache en la respuesta indica qué nivel ha respondido (HIT, R2, MISS).

Como la copia duradera no depende del renderizador, las portadas que se han obtenido al menos una vez siguen sirviéndose mientras el servicio de renderizado de FastOG no está disponible brevemente — una caída no deja en blanco una vista previa que ya se ha generado. Una portada que nunca se ha renderizado antes es el único caso que necesita el renderizador, y ahí FastOG responde con una imagen en lugar de un error:

Situación Lo que recibe un crawler
Portada ya renderizada la portada, desde el edge o el almacén duradero
Nunca renderizada, servicio de renderizado activo la portada, renderizada bajo demanda
Nunca renderizada, servicio de renderizado caído brevemente la imagen propia de la página incluida en la URL (tu foto de producto), o una tarjeta neutra — nunca una página de error

Si la propia petición no es válida (una firma manipulada, un title ausente), sigues recibiendo el 4xx correspondiente.

Cómo cambiar una imagen que ya has publicado

Qué has cambiado Qué hacer
El contenido (título, precio, foto) nada: el contenido está en la URL, así que el contenido nuevo es una URL nueva y se renderiza desde cero
La plantilla o un valor por defecto del renderizado sube la versión de invalidación de caché (FASTOG_CACHE_BUST) para que cada URL obtenga un nuevo parámetro v
Necesitas que la misma URL se renderice de nuevo pide a soporte que purgue esa URL concreta: la purga por URL exacta no está expuesta como endpoint público

Los enlaces que ya se han compartido siguen funcionando y siguen mostrando la imagen que prometían, a menos que purgues esa URL exacta.

Almacenar en caché tu propia imagen og:image (autohospedada)

Si almacenas las imágenes tú mismo en lugar de usar la caché de FastOG, aplica las mismas reglas:

Paso Detalle
Clave de caché = hash del contenido Almacena por un hash de los datos, no por un nombre de archivo mutable
TTL largo max-age=31536000, immutable para contenido estable
URLs versionadas Añade un hash/versión cuando el contenido cambie
CDN por delante Deja que la CDN absorba las peticiones repetidas

FAQ

¿Las acciones repetidas realmente cuestan 0 renders?

Sí. Las URL idénticas llegan a la caché perimetral y nunca alcanzan el renderizador: no se consume ningún conteo de cuota.

¿Cuánto tiempo almacena FastOG una imagen en caché?

Un año (immutable). Mucho después del primer render, una tarjeta compartida se sirve desde la caché.

¿Y si quiero que una imagen se actualice (p. ej., precio en vivo)?

Cambia un parámetro (el precio) → nueva URL → nuevo render. El contenido estable permanece en caché; el contenido dinámico se actualiza cuando quieras.

Pruébalo gratis: no se requiere registro

Previsualiza y prueba imágenes OG dinámicas en segundos.

Abrir el probador gratuito de imágenes OG

A BeCaSimulations site