SSG(Static Site Generator)란?
https://mingmeng030.tistory.com/249
SSR과 CSR, MPA와 SPA
react로 개발을 하면서 spa는 많이 들어봤지만 single page application이라는 것만 알았지 정확히 무엇이고, 왜 사용해야하는지, 장단점은 무엇인지 등에 대해 모르고 있었다. 블로그 정리를 위해 서치
mingmeng030.tistory.com
바로 이전 포스트에서 SPA, MPA 등을 소개했다.
서치하며 공부하던 중 SSG라는 것도 있어서 기록해보려한다.
SSG: Static Site Generator
SSG로 생성되는 웹사이트는 모든 웹페이지를 미리 모두 만들어놓고
요청이 들어오면 만들어 놓은 웹페이지를 그대로 응답만 해준다.
특징
서버와 클라이언트 측 모두 렌더링을 위해 할 일이 별로 없기 때문에 SSG로 생성된 웹사이트는 속도가 엄청 빠르다
CDN(Content Delivery Network)을 활용하면 미리 만들어 놓은 웹페이지를 유저와 지리적으로 최대한 가까운 곳에 캐싱(caching)해놓을 수도 있다.
정적 사이트 생성기로 번역할 수 있는 SSG(Static Site Generator)는 누가 접속하든 항상 동일한 내용을 보여주는 웹사이트를 만드는데 최적화된 방법이다.
∴ 컨텐츠의 변경이 자주 일어나지 않는 비교적 소규모 웹사이트를 제작에 주로 사용
- 제품 카탈로그, 개인 블로그 등
SPA와 SSG
SSG로 생성된 웹사이트는 하나의 웹페이지에서 돌아가는 SPA와 달리,
미리 만들어 놓은 수 많은 웹페이지로 이루어졌기 때문에 검색 엔진이 크롤링하기 매우 적합한 구조를 가진다.
→ 따라서 SEO(검색 엔진 최적화)가 중요한 마켓팅 웹사이트를 제작할 때는 SSG가 매우 보편적으로 사용되고 있다.
대표적인 정적 사이트 생성 도구 : Gatsby, Hugo, Jekyll, Hexo 등
단점
build 시점에 웹사이트 전체를 매번 다시 만들기 때문에 컨텐츠가 자주 업데이트 되는 웹사이트에서는 큰 비효율이 발생한다.
(보통 웹사이트의 규모가 커지면 자연스럽게 build 시간이 길어지고, 변경된 컨텐츠가 웹사이트에 반영되는데에 시간이 점점 오래 걸리게 되기 때문)
참고
https://www.daleseo.com/spa-ssg-ssr/