Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 컴파일시스템
- html기초
- 2차원배열정렬
- 딥러닝
- 해시
- K-MOOC
- 혁신의기술2:신뢰의미래 블록체인을 만나다
- 단국대학교 k-mooc
- attribute
- 블록체인 강의
- national instruments
- stringreader
- Entity
- 자바스크립트
- 오블완
- Node
- 머신러닝
- 자바입력받기
- 블록체인강의
- 디스크블록할당
- StringTokenizer
- 블록체인
- CSS 기초
- 티스토리챌린지
- StringBuilder
- 시스템프로그래밍
- 자바문자열구분
- 우선순위큐
- biginteger사용법
- K-MOOC 단국대학교 홍보단
Archives
- Today
- Total
열정 실천
[Node.js] 노드의 정의 본문
728x90
노드는 왜 만들어졌을까??
전에는 웹 상에서 파일 업로드할 때에 데이터를 조회하거나 하는 다른 작업을 할 수 없었다.
이러한 문제를 해결하기 위해 개발된 새로운 방식의 서버 도구가 바로 Node.js!
Node.js 란?
크롬 V8 자바 스크립트 엔진으로 빌드된 자바스크립트 런타임
런타임 : 특정 언어로 만든 프로그램들을 실행할 수 있게 해주는 가상 머신의 상태
노드의 내부 구조
위에서 언급했듯이 노드가 만들어 지기 전에는 웹 서버에 파일을 하나 업로드하면
핸들러가 이 파일을 업로드하기 전까지 다른 기능을 수행할 수 없기에
업로드가 완료될 때까지 기다려야한다.
그래서 노드는 하나의 요청 처리가 끝날 때까지 기다리지 않고,
다른 요청을 동시에 처리할 수 있는 비동기 입출력(논블로킹 입출력, Non-Blocking IO) 방식을 적용했다.
비동기 입출력 (Non-Blocking IO)
파일 내용을 다 읽고 난 후에 다른 일을 처리하는 동기 입출력 방식과 달리
비동기 입출력 방식은 콜백함수를 이용하여 다른 요청을 동시에 처리한다.
파일 시스템에 읽기 요청을 한 후에
프로그램이 대기하지 않고, 다른 작업을 진행한다.
그리고 프로그램에서 해당 파일의 내용을 처리할 수 있는 시점이 되면.
콜백 함수(Callback Function)를 호출한다.
이미지출처 : Do it Node.js 프로그래밍
728x90
'개발 공부 > Node.js (+자바스크립트)' 카테고리의 다른 글
[Node.js] 개발도구 설치하기 (브라켓, 크롬브라우저, 노드 설치과정) - node버전 확인, npm 버전 확인 (1) | 2022.10.08 |
---|