CSR (Client Side Rendering) |
SSG (Static Site Generation) |
ISR (Incremental Server Regeneration) |
SSR (Server Side Rendering) |
|
렌더링 주체 | 클라이언트 = 브라우저 | 서버 | 서버 | 서버 |
렌더링 시점(시기) | 브라우저에서 요청할 때 마다 | 빌드 시 | 빌드 시 | 브라우저에서 요청이 올 때 마다 |
특징(단점, 장점) | ||||
TTV (Time To View) FCP (First Contentful Paint) |
처음에 로딩되는데 시간이 걸린다. TTV(Time To View)가 길다. FCP(First Contentful Paint)까지 오래 걸린다. |
빠르다 | 빠르다 | 빠르다 (비교적으로 SSG, ISR보다는 느리다) |
html | 비어있다 | 비어있지 않다 | 비어있지 않다 | 비어있지 않다 |
JavaScript 활성화 | 필수 O | 필수 X | 필수 X | 필수 X |
SEO 최적화 | 힘들다 | 좋다 | 좋다 | 좋다 |
보안 | 취약하다 | 뛰어나다 | 뛰어나다 | 뛰어나다 |
CDN | 캐싱 불가능 | 캐싱 가능 | 캐싱 가능 | 캐싱 불가능 (요청 때마다 html 새로 불러오기 때문에) |
데이터 업데이트 | 실시간으로 데이터(변경사항) 업데이트 | 정적 데이터 | 실시간 업데이트 X but (주기적으로 업데이트) |
실시간으로 데이터 업데이트 |
사용자 맞춤 | 사용자별 정보 제공 가능 | 사용자별 정보 제공 어려움 | 사용자별 정보 제공 어려움 | 사용자별 정보 제공 가능 |
서버 과부하 (서버의 overhead가 높아진다) |
사용자 몰릴수록 과부하 |
X | X | 사용자 몰릴수록 과부화 |