Back End/Node.js

[ Node.js ] 중요 개념 - Event Loop

쟈누이 2021. 10. 20. 22:51
반응형

 

요즈음 node.js 를 바탕으로 프로젝트를 진행하면서 node 에 대해서 공부를 하고 있다.

하지만 node 에 대한 이해가 좀 부족한 것 같아서 node 에서 알아야 할 개념을 일부 정리하고자 한다.

 

이벤트 루프 모델은 여러 스레드를 사용하며,

그중 사용자가 작성한 자바스크립트 코드가 실행되는 스레드를 메인 스레드라 부른다.

Node.js 에서는 메인 스레드는 하나이며, 한번에 한 줄씩만 실행된다.

 

 

 

Event Loop 는 간단하게 표현하자면 아래 의 그림과 같이 표현할 수 있을 것 같다

링크 : https://nodejs.org/ko/docs/guides/event-loop-timers-and-nexttick/

 

여기서 각 박스는 이벤트 루프의 "단계" 를 의미한다

 

Event Loop 의 특징

  • 각 단계는 실행할 콜백의 FIFO 큐를 가진다
  • 각 단계에 진입 시, 단계의 모든 작업은 수행할때까지 단계의 큐에서 콜백을 실행한다
  • 모든 큐 소진 / 콜백 제한시 이벤트 루프는 다음 단계로 이동

 

 

자세한 내용은 추후 아래 링크 참고해야겠다.

 

 

 

참고링크


https://nodejs.org/ko/docs/guides/event-loop-timers-and-nexttick/

 

Node.js 이벤트 루프, 타이머, `process.nextTick()` | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

반응형