https://www.youtube.com/watch?v=iZ9csAfU5Os
Static Sites
: 1990년대 중반까지 모든 웹 페이지들의 방식
: 서버에서 HTML 파일을 일일이 받아오는 방식으로 페이지 이동때 마다 서버 요청하여 웹 페이지를 띄움
iframe
: 1996년에 탄생한 문서 내에서 또 다른 문서를 담을 수 있는 태그
XML Http Request API
: 1998년 탄생한 fetch API의 원조
: HTML 문서 전체가 아닌 JSON과 같은 포맷으로 필요한 데이터만 받아올 수 있게됨
: JS를 이용하여 동적으로 업데이트
AJAX
: 2005년 XML을 이용한 API 웹 페이지 방식
: 현재 널리 쓰이고 있는 SPA (Single Page Application)의 원조
: 구글 맵 등에서 사용하는 방식
: 사용자가 한 페이지 내에서 머무르면서 필요한 데이터만 받아오는 방식
: JS의 표준화가 개선됨에 따라 Angular / vue / React 같은 프레임워크가 나오면서
CSR (Client Side Rendering)의 시대가 열림
CSR (Client Side Rendering)
: 클라이언트 측에서 웹 페이지를 렌더링 하는 방식
: 서버에서 인덱스라는 HTML 파일을 보내면 인덱스에서 자바스크립트 애플리케이션의 링크를 호출하여
서버로 부터 웹 페이지 렌더링에 필요한 모든 코드와 데이터를 받아옴
- 단점
: 첫 화면을 보는데 시간이 오래걸림
: SEO (Search Engine Optimization)이 느려, 검색엔진들이 분석하는데 오래 걸림
SSR (Server Side Rendering)
: 서버에서 필요한 데이터를 모두 가져와서 HTML 파일을 만들고
이를 동적으로 제어할 수 있는 소스코드를 보내줌
: 클라이언트에서는 바로 사용자에게 페이지에게 출력할 수 있음
: 첫 페이지 로딩이 빠름
: 모든 컨텐츠가 HTML에 담겨져 있기 때문에 SEO가 개선됨
- 단점
: 전체적인 웹사이트를 서버에서 받아오기 때문에 Blingking (깜빡임) 이슈 존재
: 서버에 과부하가 걸리기 쉬움
: 동적으로 데이터를 처리하는 자바스크립트를 다운로드 받는데 속도가 느려
클릭에 대한 반응이 없을 수 있음
TTV (Time To View)
: 사용자가 웹 사이트를 볼 수 있는 특징
: CSR과 SSR에서도 빠름
TTI (Time To Interactive)
: 사용자가 웹 사이트를 사용할 수 있는 특징
: CSR에서는 빠르지만 SSR에서는 느림
=> SSR는 TTV와 TTI의 차이가 큼
SSG (Static Site Generation)
: React의 경우 CSR에 특화된 라이브러리지만 Gatsby 라이브러리를 같이 사용하면
정적으로 웹 페이지를 만들어놓아 사용할 수 있음
: CSR과 SSR이 융화된 방식
: Next.js의 경우 SSR에 특화된 라이브러리 였지만 최근에 SSG도 지원하게 됨
> CSR과 SSR을 융화하여 목적에 맞는 웹 애플리케이션을 만들 수 있음
'Development > Development' 카테고리의 다른 글
시니어 개발자가 말하는, 프론트엔드 업무와 잘하는 프론트엔드 개발자란 (0) | 2022.05.05 |
---|---|
프론트엔드 개발자라면 알고 있어야 할 브라우저의 동작 과정 (0) | 2022.05.05 |
요즘 노코드 기술 근황, 블록코딩만 할줄 알아도 기업 프로젝트가 가능하다고? (0) | 2022.04.25 |
코딩의 시작과 끝, 디버깅 | 실력있는 개발자의 필수 무기 🐛🐞 (0) | 2022.04.25 |
남들 모르는 크롬 개발자도구 소소한 기능 8개 (0) | 2022.04.24 |