2018~2019/Node.js
Node.js 특성
전기도둑
2018. 9. 8. 19:44
서버 : 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 또는 프로그램
클라이언트 : 요청을 보내는 주체
프로세스 : 운영체제에서 할당하는 작업의 단위. 프로세스 간에는 메모리 등의 자원을 공유하지 않음.
스레드 : 프로세스 내에서 실행되는 흐름의 단위. 하나의 프로세스는 여러 개의 스레드를 가짐. 자원을 공유하므로 같은 메모리에 접근 가능.
Node.js의 특성
1. 자바스크립트 런타임
2. 이벤트 기반
- 이벤트가 발생할 때 미리 지정해둔 작업을 수행하는 방식.
- 이벤트 리스너에 콜백 함수를 등록한다 : 특정 이벤트가 발생 할 때 무엇을 할 지 미리 등록해두는 것.
( 이벤트 리스너에 콜백 함수 등록 -> 이벤트 발생 -> 등록된 콜백 함수 호출 )
3. 논블로킹 I/O
- 이전 작업이 완료될 때까지 멈추지 않고 다음 작업을 수행함.
- 블로킹보다 논블로킹 방식이 같은 작업을 더 짧은 시간 동안 처리할 수 있음.
4. 싱글스레드
- 스레드를 늘리는 대신, 여러 작업을 동시에 처리하기 위해 멀티 프로세싱 방식 선택.