Onderwerp

OG-afbeeldingen cachen

Het cachen van OG-afbeeldingen betekent dat je een eerder gegenereerde sociale preview vanaf een CDN serveert in plaats van deze bij elke share opnieuw te renderen. FastOG cached identieke afbeeldingen aan de edge voor een jaar — dezelfde URL retourneert de gecachte PNG zonder dat dit meetelt voor je quota en met vrijwel nul latentie, zodat het grootste deel van het OG-verkeer van een site de renderer nooit bereikt.

Waarom caching belangrijk is

Een sociale share zorgt ervoor dat de crawler van het platform een fetch uitvoert. Als elke share opnieuw zou worden gerenderd, zou je quota en latentie verspillen aan identieke content. Agressieve caching — gebaseerd op de inhoud van de afbeelding — verandert "elke share telt als 1 render" in "de eerste share telt als 1 render, elke andere share is gratis."

Het content-gebaseerde model dat het mogelijk maakt

FastOG gebruikt content-ondertekende URL's: de URL is een pure functie van de parameters. Identieke titel + template → identieke URL. Dat betekent:

  • De edge van FastOG bewaart de afbeelding onder de URL.
  • Dezelfde content 10.000 keer gedeeld → één render, één quotumtelling, 9.999 cache-hits.
  • Content wijzigen → andere URL → één nieuwe render.
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)

De caching-headers van FastOG

FastOG retourneert Cache-Control: public, max-age=31536000, immutable (één jaar) voor gerenderde afbeeldingen. Een cover wordt vanaf de edge van FastOG in twee lagen geserveerd: de render-cache vóór fastog.com en een duurzame objectopslag erachter. Herhaalde verzoeken worden beantwoord zonder opnieuw te renderen, en X-FastOG-Worker-Cache in de response geeft aan welke laag heeft geantwoord (HIT, R2, MISS).

Omdat de duurzame kopie niet afhankelijk is van de renderer, blijven covers die minstens één keer zijn opgehaald worden geserveerd terwijl de renderservice van FastOG kortstondig niet beschikbaar is — een storing zorgt er niet voor dat een al gegenereerde preview leeg blijft. Een cover die nog nooit is gerenderd is het enige geval waarin de renderer nodig is, en in dat geval antwoordt FastOG met een afbeelding in plaats van een foutmelding:

Situatie Wat een crawler krijgt
Cover al gerenderd de cover, vanaf de edge of uit de duurzame opslag
Nog nooit gerenderd, renderservice beschikbaar de cover, op aanvraag gerenderd
Nog nooit gerenderd, renderservice kortstondig down de eigen afbeelding van de pagina die in de URL is meegestuurd (je productfoto), of een neutrale kaart — nooit een foutpagina

Als het verzoek zelf ongeldig is (een gemanipuleerde handtekening, een ontbrekende title), krijg je nog steeds de bijbehorende 4xx.

Een afbeelding wijzigen die je al hebt gepubliceerd

Je hebt gewijzigd Wat je moet doen
De inhoud (titel, prijs, foto) niets: de inhoud zit in de URL, dus de nieuwe inhoud is een nieuwe URL en wordt vers gerenderd
De template of een render-standaardwaarde verhoog de cache-bust-versie (FASTOG_CACHE_BUST) zodat elke URL een nieuwe v-parameter krijgt
Je hebt nodig dat dezelfde URL opnieuw wordt gerenderd vraag support om die ene URL te purgen — de exacte-URL-purge is niet beschikbaar als publiek endpoint

Links die al zijn gedeeld blijven werken en blijven de afbeelding tonen die ze beloofden, tenzij je die exacte URL purget.

Je eigen og:image cachen (self-hosted)

Als je afbeeldingen zelf opslaat in plaats van de cache van FastOG te gebruiken, pas dan dezelfde regels toe:

Stap Detail
Cache-sleutel = content-hash Sla op op basis van een hash van de data, niet een veranderlijke bestandsnaam
Lange TTL max-age=31536000, immutable voor stabiele content
Versie-URL's Voeg een hash/versie toe wanneer content verandert
CDN ervoor Laat de CDN herhaalde fetches opvangen

FAQ

Kosten herhaalde shares echt 0 renders?

Ja. Identieke URL's worden door de edge-cache opgevangen en bereiken de renderer nooit — er wordt geen quota verbruikt.

Hoe lang cached FastOG een afbeelding?

Eén jaar (immutable). Lang na de eerste render wordt een gedeelde kaart vanuit de cache geleverd.

Wat als ik een afbeelding wil laten bijwerken (bijv. live prijs)?

Wijzig een parameter (de prijs) → nieuwe URL → nieuwe render. Stabiele content blijft gecached; dynamische content wordt bijgewerkt wanneer jij dat wilt.

Probeer het gratis — geen aanmelding vereist

Bekijk en test dynamische OG-afbeeldingen in seconden.

Open de gratis OG-afbeeldingstester

A BeCaSimulations site