상세 컨텐츠

본문 제목

Node.js 에서 자원의 한계를 극복할수있는 이유

Aws

by 인생도NIO 2022. 7. 6. 09:48

본문

1. 비동기 방식의 이유 

 

먼저 동기식이라는것은 어떤일이 끝나고나서 순차적으로 일을 진행하는것을 말하고 비동기의 경우엔 어떤일이 끝나지 않았어도 들어오는요청을 처리하는것을 의미한다.

 

비동기식은 callback이 호출되고 그 callback함수안에서 로직을 구현을 해야한다. 

 

 

2. 비동기 방식이 좋은이유

 

비동기방식은 동기방식의 "멀티쓰레드"서버의 문제점을 해결하는데 있어서 좋습니다. 클라이언트의 요청이 많은 경우, 서버는 병목 현상이 발생하게 되며 이를 해결하기 위해 "쓰레드"를 늘려 "멀티쓰레드"로 해결하게 되는데 서버의 자원은 한정되어있기 때문에 "한계"가 발생하게 되는데 이를 Node.js는 비동기 방식으로 "싱글쓰레드"로 해결할 수 있습니다.

이렇게 많은 요청이 들어와서 단일스레드로 처리하기때문에 자원의 한계 극복이 가능하며 , 순서는 이렇다

이벤트발생-> 메시지형식으로 받아 Event Loop가 처리 -> 처리하는동안 다음이벤트를 처리하는것으로 next

-> 처리 완료 후callback호출

관련글 더보기