백엔드의 구조

웹 서버의 역할
웹 서버(Web Server)는 정적 페이지에 대해 대응한다.
동적 페이지에 대한 처리는 직접 처리하지 않고, 웹 어플리케이션 서버에게 전달한다.

정적 페이지란? 화면의 내용/데이터 등의 변동이 없는 페이지, 누가 무슨 동작을 하던간에 늘 똑같은 데이터를 보여주는 페이지(=데이터베이스, 사용자와 소통하지 않는 페이지)
동적 페이지란? 데이터 처리/연산을 통해 화면의 내용, 데이터가 변하는 페이지
웹 어플리케이션 서버(WAS)와 데이터베이스
웹 어플리케이션서버(Web Applicatioin Server)는 동적 페이지를 처리한다.
필요한 데이터 연산을 위해 데이터베이스와 연결되어 있으며 데이터 조회/수정/삭제에 대한 처리를 요청한다. 그 연산의 결과로 동적 페이지를 만들어준다.
(데이터 처리/연산한다 = 데이터베이스와 소통한다)
데이터베이스? 데이터를 통합하여 효율적으로 관리하기 위한 데이터 집합체

Node.js ?
About Node.js® | Node.js
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
Node.js는 웹 어플리케이션 서버의 역할. 그리고 데이터베이스와의 소통도 할수 있게 해준다.

Node.js 설치
Node.js
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
node.js 서버 구동하기 - 터미널에 node [작동시킬 js파일이름]


Head에는 아래와 같은 정보가 담겨있다.
1. 웹 서버의 통신상태
Ex) 200: 정상이다
400: 클라이언트가 원하는 것을 못찾았다.
500: 서버가 이상하다.
이 숫자들을 HTTP (status) code라고 부른다.
2. 응답이 어떤 형태인지 Ex ) html
포트넘버(port number)?
클라이언트와 서버가 대화를 하고 싶다면, 같은 주파수를 맞춰야한다(like 무전기). 그 주파수 역할을 함.
'TIL' 카테고리의 다른 글
| Error: listen EADDRINUSE: address already in use [PORT] (1) | 2023.12.29 |
|---|---|
| Error Cannot find module 'express' & your cache folder contains root-rowned files, due to a bug ~ (0) | 2023.12.14 |
| TIL 7일차 - CSS, Javascript 간단 정리 (0) | 2023.11.30 |
| TIL 6일차 - 웹의 이해, HTML/CSS/Javascript 간단 소개 (2) | 2023.11.23 |
| TIL 5일차 - git branch (1) | 2023.11.22 |