동기 / 비동기 프로그래밍

윤민상·2022년 8월 11일
0

면접 준비

목록 보기
1/11

항상 헷갈렸던 동기 / 비동기에 대하여 알아보자

개요



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

  • 동기는 말 그대로 동시에 일어난다는 뜻입니다. 요청과 그 결과가 동시에 일어난다는 약속인데요. 바로 요청을 하면 시간이 얼마가 걸리던지 요청한 자리에서 결과가 주어져야 합니다.

  • 요청과 결과가 한 자리에서 동시에 일어남

  • A노드와 B노드 사이의 작업 처리 단위(transaction)를 동시에 맞춘다.



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

  • 비동기는 동시에 일어나지 않는다를 의미합니다. 요청과 결과가 일어나지 않을거라는 약속입니다.

  • 요청한 그 자리에서 결과가 주어지지 않음

  • 노드 사이의 작업 처리 단위를 동시에 맞추지 않아도 된다



    동기 / 비동기 장단점

     

동기방식은 설계가 매우 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야 하는 단점이 있고, 

비동기방식은 동기보다 복잡하지만 결과가 주어지는데 시간이 걸리더라도 그 시간 동안 다른 작업을 할 수 있으므로 자원을 효율적으로 사용할 수 있는 장점이 있습니다



EX) 일상생활

  • 동기적 : 빨래 1시간 설거지 1시간 청소1시간 차례대로

  • 비동기적 : 빨래전문업체 전화 1분 설거지 전화 1분 청소 1분

profile
비전공자 개발자

0개의 댓글