ISR, kort voor incremental static regeneration, laat een website snelle, vooraf gebouwde pagina’s serveren en toch vers houden. Pagina’s worden van tevoren gemaakt zoals bij een statische site, maar in plaats van bevroren te blijven tot de volgende volledige rebuild, regenereren losse pagina’s stilletjes op de achtergrond zodra ze toe zijn aan een update.

Zie het als een bakker die zijn brood vroeg bakt, zodat het klaar ligt op het moment dat je binnenkomt. ISR voegt een twist toe: als een brood oud wordt, vervangt de bakker alleen dat ene zonder de winkel te sluiten of alles opnieuw te bakken. Bezoekers pakken altijd meteen een vers brood, en achter de schermen worden verouderde pagina’s één voor één ververst. Het zit netjes tussen volledige static site generation, die nooit verandert tot je opnieuw bouwt, en server-side rendering, die bij elk verzoek een pagina opnieuw maakt.

De winst zit in schaal. Een webshop met vijftigduizend producten kan niet bij elk bezoek elke pagina opnieuw bouwen, en ook niet de hele site herbouwen telkens als één prijs verandert. ISR ververst alleen wat het nodig heeft, zodat dynamische content actueel blijft terwijl de site de snelheid van statische bestanden vanaf een CDN behoudt. Er is één afweging om rekening mee te houden. De eerste bezoeker nadat een pagina verouderd is, ziet soms even de oude versie terwijl de nieuwe op de achtergrond wordt gebouwd, en iedereen daarna krijgt de verse. Voor een blogpost of productbeschrijving is dat prima. Voor een live voorraadstand of een flash-sale-prijs tellen die paar seconden wel, dus revalideer je op een strak schema of trigger je een rebuild op het moment dat de data verandert in plaats van op de timer te wachten.

Bij TopDevs grijpen we naar ISR op grote content- en commerce-sites, zodat klanten actuele pagina’s krijgen zonder de snelheidsprijs van alles op aanvraag renderen.