Visualisez les différences entre les 5 modes de rendering Next.js sur un scénario de page produit e-commerce. Observez comment chaque mode charge, affiche et rend interactive la même page.
Simulation pédagogique basée sur des données de référence
Les timings affichés illustrent les proportions relatives entre les modes de rendering, basés sur des benchmarks documentés (Vercel, Core Web Vitals). Les performances réelles varient selon l'infrastructure et la configuration.
Comparez visuellement les 5 modes de rendering Next.js
1// Server Component par defaut (pas de 'use client')2// Execute sur le serveur A CHAQUE requete3
4export default async function ProductPage({5 params,6}: {7 params: { id: string };8}) {9 // fetch() sans cache = SSR dynamique10 const product = await fetch(11 `https://api.store.com/products/${params.id}`,12 { cache: 'no-store' }13 ).then(res => res.json());14
15 const reviews = await fetch(16 `https://api.store.com/reviews/${params.id}`,17 { cache: 'no-store' }18 ).then(res => res.json());19
20 return (21 <main>22 <h1>{product.name}</h1>23 <p>{product.price} EUR</p>24 <p>Stock : {product.stock} unites</p>25
26 <section>27 <h2>{reviews.length} avis</h2>28 {reviews.map(review => (29 <ReviewCard key={review.id} review={review} />30 ))}31 </section>32 </main>33 );34}35
36// Le serveur attend TOUTES les donnees37// avant d'envoyer le HTML complet au client.38// TTFB eleve, mais SEO excellent.