[CS] blocking, non-blocking, asynchronous I/O Model에 대한 나름의 이해

2023. 9. 5. 11:31CS

blocking은 동기, 무조건 return이 되어야 다음을 실행

non-blocking은 short polling 방식 클라이언트 쪽에서 다되었는지에 관한 요청을 원하는 답이 올때까지 보낸다. 얘의 단점은 여러 클라이언트가 동시에 많은 요청을 보내게 되면 서버 과부하가 생길 수 있다는 것이다.

asynchronous는 long polling 방식 서버 쪽(OS)에서 다 되었으면 클라이언트 쪽(user application)으로 답(이벤트)을 보낸다.

 

Reference


http://asfirstalways.tistory.com/348

 

blocking, non-blocking and Async

blocking, non-blocking and AsyncBlocking I/O Model일단 I/O작업은 User Level(application)에서 직접 수행할 수 없다. 실제 I/O작업은 Kernel Level(OS)에서 일어나는 과정이다. 따라서 유저 프로세스(applicatioin)는 커널(OS)

asfirstalways.tistory.com