를 명확히 해 보고자 하는 시간을 가져보자.
우리가 앞으로 하려고 하는 게 뭘까?
WEB 공간의 클라이언트 누구든지 요청
요청을 받는 서버 = 웹 서버
서버는 요청이 들어오면 요청을 처리해 응답을 주는 것이 기본 메커니즘.
웹 환경에서의 요청
프론트엔드
백엔드
API, application programming interface
: 소프트웨어 간의 정보나 기능을 공유하게 해주는 매개체, 일종의 약속
JSON / XML 형식의 응답을 반환
OpenAPI(날씨, 도로명주소, ...)
예를 들어 프론트는 리액트 / 백엔드는 노드, 스프링
- 프론트 / 백엔드를 각각 구성하여 각각 배포하는 방법 -
웹서버 2개
FE, BE가 독립적으로 웹 서버에 배포됨
리액트가 페이지 전달, API 제공은 스프링 혹은 node가 담당하는 구조
- 프론트 + 백엔드 동시구성 in
웹서버 1개
리액트를 스프링 내에 귀속시킴.
하나의 웹 서버에서 FE, BE를 동시에 처리하게 됨
페이지 전달 - 리액트
API 제공 - 스프링 혹은 노드
- 백엔드만 구성해 배포 -
웹서버 1개
백엔드에서 정적 페이지 및 API를 함께 제공한다.
페이지 전달 및 API 제공 모두 스프링이나 node-express/neest
- 프론트엔드만 구성해 배포 -
웹서버 1개
프론트엔드만 배포하여 서비스함.
페이지 전달은 리액트로
API 전달이 없거나, next를 사용할 수 있음
1) 포트폴리오 웹사이트: 개인 스킬/경험을 소개하는 웹사이트. React 작성/ Github Pages나 Netilify 등 정적 호스팅 서비스 사용하여 배포.