동기와 비동기 차이

조영래·2023년 4월 8일
0
post-custom-banner

데이터 처리 모델

동기(synchronous)

동기는 데이터의 요청과 결과가 한 자리에서 동시에 일어나는것을 말한다.
요청을 하면 시간이 얼마나 걸리던지 요청한 자리에서 결과가 주어져야 한다.


사용자가 데이터를 서버에게 요청한다면 그 서버가 데이터 요청에 따른 응답을 사용자에게 다시 리턴해주기 전까지 사용자는 다른 활동을 할 수 없으며 기다려야만합니다.


ex) 브라우저를 실행시키는 시간이 약 10분이 소모된다고 가정했을때, 브라우저가 실행되는 10분이라는 시간동안 사용자는 컴퓨터의 다른 프로그램들을 동작시키지 못하며 브라우저가 켜지는 그 순간만들을 계속 기다려야한다.
이 시간이 얼마든 한 개의 데이터 요청에 대한 서버의 응답이 이루어질 때까지 계속 대기해야한다.

비동기(Asynchronous)

동시에 일어나지 않는다는 의미를 말한다
= 요청한 결과는 동시에 일어나지 않을거라는 뜻


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

동기와 비동기의 장단점

장점

동기 : 설계가 매우 간단하고 직관적이다.
비동기 : 요청에 따른 결과가 반환되는 시간 동안 다른 작업을 수행할 수 있다.

단점

동기 : 결과가 주어질 때까지 아무것도 못하고 대기해야 한다.
비동기 : 동기식보다 설계가 복잡하다.

profile
난될놈이야
post-custom-banner

0개의 댓글