inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

블로킹 === 동기 , 논 블로킹 === 비동기 이 개념이 헷갈려서 질문드립니다.

345

짱구

작성한 질문수 28

0

안녕하세요~ 제로초님

"노드의 특성" 강좌에서 논 블로킹과 동기를 같은 개념으로 그리고 블로킹과 비동기를 같은 개념으로 생각해도 무방하다고 하셨는데요. 제가 볼 때도, 둘은 같은 개념 같은데... 왜 블로킹과 비동기 같이 다른 이름으로 불리는 지 혼란스럽습니다.

보통 다른 이름으로 불려진다는 것은 매우 유사하면서도, 둘을 구분 지을 수밖에 없는 차이점이 있기 때문일텐데...

"블로킹 vs 동기" 의 차이점과   "논 블로킹 vs 비동기" 의 차이점은 무엇인가요??

아 그리고 내일이면, 연말인데 행복한 연말 보내시고, 2022년 새해 복도 많이 받으시기 바랍니다 :)

블로킹 논블로킹 nodejs mysql 동기 비동기 mongodb Sequelize

답변 1

1

제로초(조현영)

비동기와 동기는 간단하게 코드의 순서랑 실행 순서가 일치하느냐로 볼 수 있습니다.

블로킹과 논블로킹은 코드의 실행이 다른 코드의 실행을 막느냐로 볼 수 있습니다.

그래서 두 개념이 다른 겁니다.

노드에서는 비동기면 논블로킹인 경우가 많습니다. fs같은 것들은 파일시스템 동작을 백그라운드로 넘겨버립니다. 그러면 그 와중에 다음 코드들이 실행되고, 파일시스템 동작이 완료되면 위에서 정의해둔 콜백이나 프로미스가 실행됩니다. 즉 코드도 순서대로 실행되지 않는 것이죠.

새해복 많이 받으세요!

리눅스 노드 설치시 패키지

0

162

0

socket.js 에서 referer로부터 roomId를 가져올 때

0

907

3

스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문

0

2281

2

a[title] 질문드립니다

0

377

1

리뉴얼 강의 및 공부 방법

0

583

1

jwt decode

0

1130

1

node.js 교과서 3판 질문드립니다

0

392

1

passport와 jwt

0

434

1

리뉴얼 강의

0

421

2

혹시 Node.js 교과서 3판 이북은 언제 나오나요?

0

355

1

몽고디비 사용자도 MYSQL부분을 들어야 하나요???

0

482

1

sql 쿼리 로그는 어떤 모듈이 작성하나요?

0

506

2

nunjucks res.render('error'); 작동을 안합니다.

0

512

1

질문있습니다.

0

348

1

multer 한글 파일 업로드시 파일명이 깨져요.

1

3536

1

수업자료는 어디있나요?

0

368

1

질문 있습니디

0

237

1

multer 사용시 file 외 name값은 못받나용?

0

418

1

코드 중복 부분 질문드립니다.

0

299

1

api 만드는 이유 질문드립니다.

0

288

1

Strategy의 done에 대해 질문드립니다.

0

367

1

안녕하세요 fs 권한 관련 질문드립니다

0

451

1

시퀄라이즈 연결질문...

0

500

2

res.setHeader vs res.cookie

0

1789

3