카테고리 없음

Node JS 메모

Below_zero 2026. 1. 6. 03:46

What is Server : 닭갈비집 알바생 (서빙해주는 사람 : Server)

Ex) 네이버 웹툰 홈화면 페이지 보내주세요 (요청) -> 수행

 

요청을 처리할 수 있는 기계

 

여기서 말하는 요청이란 : HTTP 요청 등


HTTP 요청 

  1. 읽기 GET 

  2. 쓰기 POST - 댓글 작성, 포스트 작성

  3. 수정 PUT 

  4. 삭제 DELETE

 

사용자는 GET/POST/PUT/DELETE 요청

서버는 요청사항에 따른 동작을 사용자에게 제공

 

Node.js 환경에서 Javascript 문법으로 해당 동작을 코드로 작성

Javascript : HTML 조작을 위해 만들어진 언어

HTML은 정적인 동작밖에 하지못하지만, Javascript는 웹페이지가 동적인 동작을 하도록 만들 수 있음

 

HTML내의 Javascript 해석은 누가 하는가?

: Browser (Chrome (V8), Firefox 등) 브라우저마다 JS를 해석하는 엔진을 포함하고 있음.

 

크롬의 해석엔진인 V8을 떼와서 만들어진 환경 : NodeJS

브라우저 내에서 뿐만 아니라 다른 환경에서도 JS를 실행할 수 있도록 만들어주는 환경

 

덕분에 Javascript를 HTML 외 환경에서 동작하는 프로그래밍 언어로 활용할 수 있음.

왜 NodeJS로 서버를 만드는가 ? : Non-blocking I/O 써먹기 좋음.

 

일반적인 언어로 blocking I/O가 이루어지는 서버라면 : 한번씩 무거운 요청이 들어오면, 해당 요청을 처리하는 동안 다른 요청은 오래 대기하는 상태가 벌어짐 (병목)

 

Non-blocking I/O : 요청을 전부 받아둔 후, 처리속도가 빠른 요청부터 먼저 처리해 보냄 - 많은요청을 한번에 받아들일 수 있음

 

주로 SNS, 채팅서비스의 경우 한꺼번에 많은 요청이 잦기에 NodeJS가 많이 이용됨 ..

 

단, 만들 서비스가 단순한 형태의 웹서비스가 아니라면 (예를 들어 이미지 처리 서버 등) 활용할만한 라이브러리가 부족하기 때문에 C, Python 계열을 알아보는게 좋다.