[nodejs] SSR과 초기 렌더링

서버 사이드 렌더링(Server-Side Rendering, SSR)은 클라이언트 사이드 렌더링(Client-Side Rendering, CSR)과 대비됩니다. SSR은 서버 측에서 웹 페이지 렌더링을 수행하고 클라이언트에 최종 HTML을 제공하는 방식입니다. 이는 웹 페이지의 초기 로딩 시간을 줄이고 검색 엔진 최적화(SEO)를 개선합니다. 직접 효과를 보여주며 사용자 경험을 향상시키는 주요 이점을 가지고 있습니다.

SSR을 사용하는 프레임워크는 Next.jsNuxt.js가 있습니다. 각각 React와 Vue.js를 기반으로 합니다. 이러한 프레임워크들은 SSR을 통해 초기 렌더링을 향상시켜 사용자에게 더 나은 성능을 제공합니다.


SSR과 CSR의 비교

  SSR CSR
렌더링 서버 측 클라이언트 측
초기 로딩 빠름 느림
SEO 용이 어려움
성능 초기에 빠름, 후속 로딩은 CSR에 비해 느릴 수 있음 초기 로딩이 느리지만, 후속 로딩은 빠름
캐싱 서버 사이드 캐싱 사용 가능 클라이언트 사이드 캐싱만 사용 가능

SSR의 동작 방식

SSR은 클라이언트에 최종 HTML을 제공하기 위해 서버 측에서 렌더링하는 방식입니다. 사용자가 웹 페이지에 접속할 때, 서버는 요청된 페이지에 해당하는 HTML을 생성하고 클라이언트에 전달합니다. 그러면 클라이언트는 브라우저에 해당 HTML을 표시하게 됩니다.

SSR은 React나 Vue.js와 같은 라이브러리를 사용하여 서버 측에서 컴포넌트를 렌더링하고 초기 데이터를 채워넣습니다. 이렇게 생성된 HTML은 사용자의 요청에 따라 동적으로 업데이트됩니다.


SSR의 장점

SSR은 초기 로딩 시간을 개선하고 검색 엔진 최적화를 향상시킬 수 있습니다. 이는 사용자 경험을 향상시키고 웹 페이지의 성능을 향상시킵니다. 또한 서버 사이드 캐싱을 사용하여 성능을 최적화하고 서버 부하를 줄일 수 있습니다.


SSR을 통해 초기 렌더링을 개선하는 것은 사용자 경험을 향상시키고 웹 페이지의 성능을 개선하는 데 도움이 됩니다. 다양한 프레임워크와 라이브러리를 사용하여 SSR을 구현할 수 있으므로, 해당 기술을 사용하여 웹 애플리케이션의 성능을 최적화할 수 있습니다.