-
블로킹과 논블로킹 그리고 스레드의 관계(2)TodayILearned/node.js 2020. 10. 30. 00:00
2020/10/28 - [TodayILearned/node.js] - 블로킹과 논블로킹 그리고 스레드의 관계(1)
single thread/blocking model
한명의 점원이 주문을 받는다. 먼저 주문받은 음식이 나갈 때 까지 추가 주문은 안받는다.
- 시간이 오래 걸림
- 효율이 낮음
single thread/nonblocking model
한명의 점원이 주문을 받는다. 주문은 계속해서 받으며, 음식은 만들어지는 순서대로 나간다.(주문한순서대로 안나감)
- 앞서 나온 모델에 비해 효율적이다
multi thread/blocking model
여러명의 점원이 주문을 받는다. 각자 손님 한명씩 맡아 음식을 내보낸다.
- 자원의 소모가 큼
- 자원을 사용하지 않을 때 생기는 기회비용이 큼
multi thread/nonblocking model
여러명의 점원이 주문을 받는다. 주문도 계속해서 받는다. 음식은 만들어진 순서대로 받는다.
▶싱글스레드인 노드에서 불가능하지만, 싱글스레드 여러개를 사용하여 멀티스레딩과 비슷한 기능을 함.(멀티프로세싱)
'TodayILearned > node.js' 카테고리의 다른 글
블로킹과 논블로킹 그리고 스레드의 관계(1) (0) 2020.10.28 async, await 의 개념(1) (0) 2020.10.11 var,let,const 의 특징 (0) 2020.10.10