To so tri glavne strategije za kdaj se HTML strani genira. Izbira prave za vsako stran uravnoteži svežnost, zmogljivost in stroške strežnika.
SSG — Static Site Generation (v času gradnje)
() {
posts = (, { : }).( r.());
;
}
To so tri glavne strategije za kdaj se HTML strani genira. Izbira prave za vsako stran uravnoteži svežnost, zmogljivost in stroške strežnika.
() {
posts = (, { : }).( r.());
;
}
Stran je pre-renderirana v statični HTML med gradnjo in predpomnjena na CDN-u. Najhitrejši mogočni dostop, vendar je vsebina zamrznjena do naslednje gradnje. Najbolje za vsebino, ki se redko spreminja: tržne strani, dokumentacija, objave na blogi.
// HTML generated FRESH on every request
export default async function Page() {
const data = await fetch("...", { cache: "no-store" }).then(r => r.json());
return <Dashboard data={data} />;
}
Strežnik renderira stran ob vsakem zahtevku, zato so podatki vedno aktualni — na račun počasnejših odzivov in bremenitve strežnika pri vsakem obisku. Najbolje za osebne ali vedno sveže podatke: nadzorne plošče, strani računa, rezultati iskanja.
// Static, but automatically rebuilt in the background every N seconds
export const revalidate = 60; // regenerate at most once per 60s
export default async function Page() {
const products = await fetch("...", { next: { revalidate: 60 } }).then(r => r.json());
return <Products items={products} />;
}
ISR služi statični HTML (hitro, predpomnjen na CDN-u), vendar ga ponovno validira v ozadju po urniku — zato dobite statično zmogljivost s periodično svežimi podatki, brez ponovne gradnje celotne spletne strani. Najbolje za vsebino, ki se občasno spreminja: seznami proizvodov, novice, lestvice.
Speed Freshness Server cost Use for
SSG fastest build-time only none docs, marketing
SSR slower always fresh every request dashboards, personalized
ISR fast every N seconds occasional catalogs, news
V App Routerju te izbiraš pri vsakem pridobivanju podatkov prek možnosti cache (force-cache = SSG, no-store = SSR, revalidate = ISR) namesto posebnih funkcij.
Razumevanje kompromisa — statična je najbolj hitra, vendar zastarela, SSR je sveža, vendar draga, ISR pa uravnovešava oboje — te omogoča optimizacijo vsake strani za pravo kombinacijo zmogljivosti in sveže podatkov.