자바스크립트를 사용하여 브라우저에서 직접 페이지를 렌더링하는 것을 의미한다. 모든 로직과 데이터 패치, 템플릿 및 라우팅이 서버가 아닌 클라이언트에서 처리된다.
CSR에서 서버는 빈 HTML 페이지와 모든 로직을 처리하는 자바스크립트 번들을 반환한다.
CSR은 SEO에 크게 의존하지 않는 모든 사이트에 이상적이다. 풍부한 사이트 상호작용과 웹, 크로스 플랫폼 어플리케이션을 만드는 경우에 사용할 수 있다.
브라우저에서 웹 페이지를 렌더링하는 대신 서버에서 웹 페이지를 생성하는 방법으로, 서버에서 완전히 렌더링 된 페이지를 클라이언트로 보내고, 클라이언트의 자바스크립트 번들이 SPA 프레임워크의 작동을 대신하는 방식이다.
SSR에서는 페이지가 서버에서 렌더링되어 클라이언트로 전송되기 때문에 동적 데이터를 사용하면서도 우수한 검색 엔진 최적화를 유지할 수 있다.
SSR은 서버 비용을 크게 증가시킬 가능성이 있는 만큼 매우 빈번하게 변경되거나, SEO에 크게 의존하는 매우 동적인 콘텐츠를 포함하고 있는 사이트에 사용하는 것이 좋다.
raw 데이터와 템플릿 세트를 바탕으로 완전히 정적인 HTML 웹 사이트를 생성하는 방법으로, 기본적으로 각각의 HTML 페이지 코딩 작업을 자동화하고 해당 페이지를 미리 사용자에게 제공할 수 있도록 준비한다. 즉, SSG는 웹 사이트의 모든 페이지를 미리 렌더링하고 클라이언트의 요청에 따라 페이지를 제공하는 방법이라고 할 수 있다.
제품 쇼케이스 웹사이트와 같이 내용이 거의 변하지 않는 웹사이트의 경우에만 사용하는 것이 좋고, 수정할 때마다 사이트를 다시 배포해도 괜찮은 경우라면 SSG를 사용하는 것을 고려해 볼 수 있다.
하지만 약간의 동적 콘텐츠라도 포함하고 있는 사이트에서는 SSG를 절대 사용하지 않는 것이 좋다.
ISR을 사용하면 전체 사이트를 재빌드할 필요 없이 페이지별로 정적 생성을 사용할 수 있는데, 정적 사이트의 이점을 유지하면서 수많은 페이지로 확장할 수 있다.
ISR은 SSG와 SSR의 장점이 합쳐진 방식으로 보다 효율적이고 확장 가능한 솔루션을 제공하기 때문에 매우 효과적인 렌더링이 가능하다.
콘텐츠가 동적이지만 자주 변경되지 않는 사이트에 ISR을 사용하는 것이 가장 이상적인데, 블로그나 개인 웹사이트 등이 해당될 수 있다.