이벤트 기반, 논블로킹 I/O모델을 사용해 가볍고 효율적이다.
- 장점
👉 싱글 스레드, 논블로킹 I/O를 사용해 속도가 빠르다.
👉 생산성이 높고, 프론트엔드 개발자가 사용하기에 용이하다.- 단점
👉 로직이 복잡한 경우 콜백함수의 늪에 빠질 수 있다.
- 논블로킹 I/O
👉 시간이 많이 걸리는 작업을 백그라운드에서 처리한다.
👉 처리하는 동안 클라이언트는 계속 요청을 보낼 수 있다.
👉 서버에서 요청을 순차대로 처리한다.
👉 기다리지 않고 요청과 응답을 받을 수 있다는 장점이 있다.- 싱글스레드
👉 주어진 작업들을 한 개의 스레드가 처리하는 방식이다.
👉 메모리를 효율적으로 사용할 수 있다.- 멀티스레드
👉 주어진 작업들을 여러개의 스레드가 처리하는 방식이다.
👉 스레드 간의 작업 전환 비용, 작업하지 않는 스레드가 발생할 수 있다.
유익한 글이었습니다.