Sobes.tech
Middle

Wat zijn de nadelen van server-side rendering (SSR)?

sobes.tech AI

Antwoord van AI

Belangrijkste nadelen van SSR:

  • Toename van de belasting op de server: Elke clientaanvraag vereist volledige rendering van de pagina op de server, wat meer resources (CPU, geheugen) vergt in vergelijking met het serveren van statische bestanden of SPA.
  • Ontwikkelingscomplexiteit: Het is nodig om rekening te houden met de isomorfie van de code (werken op de server en de client), het beheer van de staat tussen verzoeken, het afhandelen van asynchrone gegevens. Debuggen kan moeilijker zijn.
  • Uitval bij serverfouten: Als de hoofd-Render-server uitvalt, kan de site onbereikbaar worden, in tegenstelling tot SPA, waar de client kan blijven werken met gecachte bronnen of fallback-pagina's.
  • Langer tijd tot interactiviteit (TTI): Hoewel de eerste inhoud sneller verschijnt (FCP), kan de gebruiker niet interactief worden met de applicatie totdat alle JavaScript (hydratie) is geladen en uitgevoerd op de client. Bij SPA kan de interactiviteit eerder verschijnen op al geladen delen van de pagina.
  • Complexiteit van caching: Het cachen van dynamisch gegenereerde HTML is moeilijker dan statische bronnen. Er zijn meer verfijnde caching-strategieën nodig aan de serverzijde.
  • Hogere First Byte Time (TTFB): De server heeft tijd nodig om het verzoek te verwerken, gegevens te verkrijgen, HTML te renderen en de eerste byte terug te sturen.
  • Problemen met isomorfe code: Sommige client-side API's (bijvoorbeeld window, document) zijn niet beschikbaar op de server, wat het schrijven van voorwaardelijke code of het gebruik van speciale bibliotheken vereist.
// Voorbeeld van voorwaardelijk renderen op de server
if (typeof window === 'undefined') {
  // Code die alleen op de server wordt uitgevoerd
  console.log('Server-side rendering');
} else {
  // Code die alleen op de client wordt uitgevoerd
  console.log('Client-side rendering');
}