일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 블록체인 #layer2 #레이어2 #이더리움스케일링
- #경제상식 #화폐 #금융 #화폐금융론 #경제학 #경제기본 #경제지식 #경제근육 #투자지식 #경제공부 #경제학전공 #금융이란 #화폐란 #금융시장 #금융시장역할 #화폐역할 #화폐역기능 #금융역기능 #
- 자료구조 #알고리즘
- #국제채권시장 #유로본드 #유로커런시 #유로달러 #외국채 #금융중개기관 #간접금융 #거래비용#다우존스공업평균지수 #나스닥종합지수 #FTSE100 #DAX #CAC40 #straittimes #항생지수 #거래비용 #유동성 #위
- 페이스북유니버시티 #마케팅교육 #마케팅캠프
- html #js #parsing
- 미쉬킨의화폐와금융 #미쉬킨 #화폐금융론 #화폐와금융 #경제학 #교양 #경제지식 #경제공부
- vp #vc #did #신원인증 #블록체인
Archives
- Today
- Total
평행우주 : world 1
[배포] 정적 웹사이트 vs 동적 웹사이트 본문
정적 웹사이트와 동적 웹사이트
정적 웹사이트
- HTML 파일(코드) 자체로 배포되는 사이트 (CSR, Client Side Rendering)
- 현대의 2-tier Architecture에서 정적 웹사이트의 사용이 더욱 보편적
동적 웹사이트
- 서버에 의해 HTML 파일이 동적으로 생성되는 사이트 (SSR, Server Side Rendering)
웹사이트 렌더링 방식의 변천
- AJAX 이전에는 요청에 따라 결과가 변하는 동적인 웹페이지를 만드려면, 서버가 매번 동적으로 생성해야 했다.
- 동적 웹사이트를 받아오기 위해서는, 서버가 HTML의 형태로 브라우저에 제공해주어야만 했기 때문에,
- 헤더나 푸터 등의 페이지 구성요소의 중복 요청/응답이 빈번했고, 네트워크 상에서 주고받는 패킷의 크기가 비교적 커졌다.
- AJAX 이전에는 서버에서 웹페이지를 만드는 기술이 보편화되었고,
- 동적 웹사이트를 만드는 기술로는 PHP, JSP, ASP, node.js 등이 사용되었다.
- 점차 브라우저의 발달과 AJAX 기술이 보편화되면서, 모든 동적인 정보들을 서버가 부담할 필요가 없어진다.
- 필요한 부분만 클라이언트가 요청할 수 있게 되었고, 이로 인해 서버의 부하가 다소 줄어들게 된다.
- 이에 따라 서버는 JSON과 같은 순수한 데이터 포맷만 제공해주는 형태로 흐름이 바뀌기 시작했으며,
- 클라이언트 사이드(웹페이지)는 자바스크립트와 AJAX 기술을 이용해 Single Page Application으로 변모하기 시작한다.
- 자바스크립트는 동적인 렌더링을 지원하나, 결국 서버가 웹페이지를 렌더링하지 않으며,
- HTML/CSS/JS 파일의 소스 코드 그대로 작동하는 특징을 갖고 있기 때문에, 정적 웹사이트라고 할 수 있다.
// 동적 웹페이지 예제 (node.js)
const http = require('http');
const server = http.createServer((req, res) => {
res.setHeader('Content-Type', 'text/html'); // HTML 문서의 형태로 전달됨
res.end('<h1>동적 웹페이지</h1><p>with 랜덤한 값</p>' + Math.random()); // 서버에 의해서 동적으로 바뀜
});
server.listen(3000);
더이상 동적 웹사이트는 쓰이지 않을까?
여전히 사용된다.
SSR의 장점을 살리기 위해서 다양한 방법으로 동적 웹사이트가 만드는 경우도 있고,
성능의 향상을 극대화하기 위해 CCR, SSR의 하이브리드 형태로 구성하는 경우도 있다.
'텃밭 3 : BE > 배포' 카테고리의 다른 글
[배포] 빌드 개념과 툴 (0) | 2022.02.24 |
---|---|
[배포] SSR과 CSR (0) | 2022.02.24 |
Comments