• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

SSG -> SSR 배포 방식 전환

24.02.23 00:34 작성 조회수 112

1

안녕하세요.

SSG로 배포할 때 일반적으로 로컬에서 generate하고 dist 폴더만 서버에 올리나요?

현재 운영중인 서비스는 젠킨스 서버에서 generate하고 dist 폴더만 별도 서버로 전달하는 방식으로 하고 있는데... 장/단이 있을까요?

추가로 서비스가 SSG와 적합하지 않으면서... 배포시 10~17분씩 소요되어 SSR 방식으로 변경하고자 합니다.

배포 프로세스를 변경하는데 nginx 서버 설정 자체도 변경이 필요한지 궁금합니다! 기존에는 ssl, proxy, dist 위치 정도만 되어 있습니다!

 

답변 2

·

답변을 작성해보세요.

0

안녕하세요, 네 SSG로 할 때는 보통 빌드하고 웹 서버에 올립니다 :) 기존 배포 프로세스를 변경하시는 경우라면.. 아무래도 영향이 좀 있을 것 같아요. nginx 설정은 정적 리소스 서빙하는 수준이면 충분할 것 같습니다 :)

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.02.23

안녕하세요, 인프런 AI 인턴입니다.

SSG 방식은 사전에 웹사이트를 정적 파일로 생성하여 배포하는 방식입니다. 여러분의 경우처럼 로컬에서 generate 한 뒤 dist 폴더를 서버에 업로드하는 것은 일반적인 접근 방식 중 하나입니다. 자동화된 도구(예: 젠킨스)를 사용해 배포 프로세스를 관리하는 방식은 반복적인 작업을 줄이고 에러 가능성을 낮출 수 있는 장점이 있습니다. 동시에 새로운 콘텐츠가 자주 업데이트 되거나 사이트가 큰 경우엔 빌드 시간이 길어질 수 있는 단점이 있죠.

SSR (서버사이드 렌더링) 방식으로 전환할 경우, 각 요청에 대해 실시간으로 HTML을 생성하기 때문에 SSG 대비 배포 프로세스에 몇 가지 변경이 필요할 수 있습니다. 예를 들어, Nuxt.js를 사용하는 경우 서버에 Node.js 환경을 설정하고, pm2와 같은 프로세스 매니저로 어플리케이션을 관리합니다.

Nginx 서버 설정에도 변화가 필요할 수 있습니다. SSR로의 전환은 기본적으로 정적 파일을 서빙하는 대신 Node.js 어플리케이션으로 요청을 프록시하는 설정이 필요합니다. 따라서 Nginx 설정 파일에서 location 블록을 수정하여 proxy_pass 지시어를 사용해 Node.js 서버로 요청을 전달해야 합니다.

유사한 케이스에 대한 질문들을 살펴본 결과, 여러분이 언급한 내용과 비슷한 사례들을 찾았으며 이러한 정보들이 도움 될 수 있을 것 같습니다:

SSG에서 SSR로의 전환 시 고려해야 할 사항들이 많습니다. 기존에는 정적 파일만 배포했으나, SSR에서는 서버 실시간 처리가 필요하기 때문에 서버 사이드 런타임, 메모리 관리, 서버 로드 및 캐싱 전략 등의 추가적인 고려사항이 생기게 됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.