Synchronous 그리고 Asynchronous 에 대해 설명하고자 합니다.
우리가 일을 처리할 때에 어떤식으로 처리를 할까요?
우리가 지금 아래 세가지 일을 해야한다면
먼저 빨래를 다 하고 난 다음
청소를 하고 청소가 다 끝난 다음
숙제를 한다.
위의 방식이 동기적 처리의 예라고 볼 수 있습니다.
장점: 일의 순서가 있다.
청소업체에게 청소의뢰를 한다.
빨래업체에게 빨래의뢰를 한다.
숙제대행 업체에게 숙제의뢰를 한다.
장점: 자원을 효율적으로 활용할 수 있다.
단점: 일이 언제 끝날지 모른다.
우리는 일을 동기적으로 처리해야할 때와 비동기적으로 처리해야할 때를 적절히 사용하여 백엔드의 성능을 최고화 하여야 할때가 있습니다.
Node.js는 철학 자체가 비동기적이기 때문에 저희는 적절히 수정을 통해 원하는 기능을 구현해야 합니다.