1. 노드 시작하기

Donghun Seol·2022년 9월 16일
0

node.js 교과서

목록 보기
1/12

1. 노드 시작하기

1.1 핵심 개념 이해하기

node.js는 V8엔진으로 빌드된 자바스크립트 런타임

1.1.1 서버

노드는 서버 애플리케이션으로 가장 널리 활용된다. 여기서 서버에 대해서는 생략할게

1.1.2 자바스크립트 런타임

08년 V8 엔진의 등장으로 자바스크립트 성능이 획기적으로 빨라진 것을 계기로, 자바스크립트를 브라우저의 굴레로부터 해방시켜 컴퓨터에서 실행가능하도록 만든 것.
libuv는 이벤트기반, 논블록킹 I/O 모델을 구현하도록 도와준다.

1.1.3 이벤트 기반

1.1.4 논 블록킹 I/O

1.1.5 싱글쓰레드

1.2 서버로서의 노드

노드 서버는 이벤트기반, 논블록킹 I/O, 싱글스레드 모델의 장단점을 그대로 계승한다.
일반적으로 암호화나 이미지 처리같은 CPU를 많이 사용하는 작업에는 부적절하고, 작은 데이터를 실시간으로 주고받는 작업에 적합하다.

장점

  • 웹서버 내장
  • 우수한 생산성
  • 컴퓨팅 자원을 적게 사용

단점

  • 하나뿐인 스레드가 멈추지 않도록 관리해야 함
  • 어중간한 성능
  • cpu 부하가 큰 작업에 부적절

1.3 서버 외의 노드

웹, 모바일앱, 데스크탑앱 개발에 활용가능하다.

1.4 개발환경 설정

생략

1.5 참고자료

노드 전반적인 설명
이벤트 루프 설명
이벤트 루프에 대한 시각적 설명

profile
I'm going from failure to failure without losing enthusiasm

0개의 댓글