랜더링이라는 데이터를 통해서 사용자에게 볼 수 있는 형태로 나타내는 것이다.
웹에서의 랜더링은 크게 서버사이드 랜더링,클라이언트 사이드 랜더링으로 나뉜다.
출처: https://linked2ev.github.io/devlog/2018/11/15/Javascript-2.-What-is-SSR/
서버사이드 랜더링을 이름 그래도 서버에서 html,css,js형태로 사용자가 볼 수 있는 형태로 클라이언트에게 제공하는 것을 말한다.
seo즉 검색엔진 최적화를 진행할 때 서버사이드 랜더링한 사이트가 더 높은 순위를 차지 할 수 있다. 왜냐하면 js다운로드를 기다려야하는 csr과 달리 html에 담겨오므로 빠르기 때문이다.
그러나, 서버에서 이 모든 일을 한다면, 서버에서의 부하는 이로 말할 수 없을 것이다. 서버는 이미 여러 데이터 처리, 동시성 문제 등을 해결하는데, html,css,js등을 랜더링하는 작업 까지 한다면 부하가 매우 커질 것이다.
이 때문에 현대의 대부분은 클라이언트 랜더링을 사용한다. 클라이언트가 서버에게 데이터를 요청하면, 서버는 데이터를 주고, 클라이언트는 이 데이터를 가지고, 랜더링을 진행한다.
물론 SSR에 비해서 느리지만, 직접 클라이언트에서 렌더링과 UI/UX작업,페이지 전환등을 진행하므로, 더 나은 사용자 경험을 제공할 수 있다는 장점이 있다. 또한 동적인 컨텐츠를 처리할 때 CSR을 이용하면 더욱 효과적으로 처리 할 수 있다.