Tiny Finger Point Hand With Heart
본문 바로가기
  • 바쁘다바빠 현대사회 알쏭달쏭 컴퓨터세상 왁자지껄 개발로그
1일1CS

23. 동기와 비동기의 차이

by 개랄발랄주인장 2022. 12. 30.
728x90
반응형
SMALL

데이터 처리 모델

데이터 처리 모델을 쉽게 표현하자면 데이터를 받는 방식이라고 할 수 있다.

동기와 비동기 방식

 동기(Synchronous: 동시에 일어나는)

- 동기는 말 그대로 동시에 일어난다는 뜻이다. 요청과 그 결과가 동시에 일어난다는 약속이다.

바로 요청을 하면 시간이 얼마나 걸리던지 요청한 자리에서 결과가 주어져야 한다.

사용자가 데이터를 서버에게 요청한다면 그 서버가 데이터 요청에 따른 응답을 사용자에게 다시 리턴해주기 전까지

사용자는 다른 활동을 할 수 없으며 기다려야한다.

순서에 맞춰 진행되는 장점이 있지만,  여러 가지 요청을 동시에 처리할 수 없다.

 

위 그림의 (a)처럼 커피 주문을 받고 나올 때까지 기다리는 것이 동기 방식의 예시라고 할 수 있다.

 

 비동기(Asynchronous: 동시에 일어나지 않는)

- 비동기는 동시에 일어나지 않는다를 의미한다. 요청과 결과가 동시에 일어나지 않을 거라는 약속이다.

하나의 요청에 따른 응답을 즉시 처리하지 않아도, 그 대기 시간동안 또 다른 요청에 대해 처리 가능한 방식이다.

서버에게 데이터를 요청한 후 요청에 따른 응답을 계속 기다리지 않아도되며 다른 외부 활동을 수행하여도되고,

서버에게 다른 요청사항을 보내도 상관없다.

여러 개의 요청을 동시에 처리할 수 있는 장점이 있지만 동기 방식보다 속도가 떨어질 수도 있다.

 

위 그림의 (b)처럼 점원 한명이 커피 주문을 받고 다른 점원이 커피를 건네주는 것이 비동기 방식의 예시다.

 

출처 :https://poiemaweb.com/js-async

동기와 비동기의 장단점

 동기

장점 : 설계가 매우 간단하고 직관적이다.

단점 : 결과가 주어질 때까지 아무것도 못하고 대기해야 한다.

비동기

장점 : 요청에 따른 결과가 반환되는 시간 동안 다른 작업을 수행할 수 있다.

단점 : 동기식보다 설계가 복잡하다.

 

정리

  • 동기와 비동기는 어떤 작업 혹은 그와 연관된 작업을 처리하고자 하는 목적의 차이.
  • 동기는 추구하는 행위 와 목적이 동시에 이루어지고,
  • 비동기는 추구하는 행위 와 목적이 다를 수도 있고, 동시에 이루어지지도 않는다.

블럭 과 논블럭의 차이

블럭 과 논블럭은 동기, 비동기와 연결되는 개념

블럭이란?

  • 블럭이란 동기의 개념에서 만들어진 상태

브라우저가(크롬) 실행되는 시간이 10분(요청)이라고 가정했을시에
브라우저가(크롬) 이 오픈(결과) 되기전까지 다른 브라우저(사파리 등등)은 계속 대기해야 하는 상태를 블럭 상태라고 부른다.

 

논블럭이란?

  • 논블럭이란 비동기 개념에서 만들어진 상태

브라우저가(크롬) 실행되는 시간이 10분(요청)이라고 가정했을시에
브라우저가(크롬) 이 오픈(결과) 되기전까지 다른 브라우저(사파리 등등)은 시간을 대기 하지 않고 제약없이 자유롭게 사용할수 있는 상황을 논블럭 상태 라고 부른다.

 

 블럭과 논블럭 정리

  • 블럭이란 동기의 개념에서 만들어진 상태
  • 논블럭이란 비동기 개념에서 만들어진 상태
728x90
반응형
LIST

'1일1CS' 카테고리의 다른 글

25. 중앙처리장치(CPU)  (0) 2023.01.04
24. TCP/IP 계층개념과 OSI7계층 비교  (5) 2023.01.03
22. 프로토콜의 개념, 요소,특징,계층 구성  (0) 2022.12.29
21. MSA란 무엇인가  (0) 2022.12.29
20.HTTPS 란  (0) 2022.12.28

댓글