본문 바로가기
개발자가 되기 위한 준비과정/개발자기술면접 준비

[4] 동기와 비동기 차이 (개발자 면접 준비)

by 제이스톨 2023. 10. 16.
728x90

Q. 동기와 비동기의 차이를 설명 해 주세요.

A. 동기 방식은 요청을 보내고 실행이 끝나면 다음 동작을 처리하는 방식이며, 비동기 방식은 요청을 보내고 해당 동작의 처리 여부와 상관 없이 다음 요청이 동작하는 방식입니다.

 

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

예. 음식 주문을 하고 나올때까지 기다리는 행위

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

예.점원 한명이 커피 주문을 받고 다른 점원이 커피를 건네주는 것

 

  • 동기 (Synchronous)
    • 순서에 맞추어 진행되기 때문에 제어하기 쉽고 직관적입니다.
    • 여러가지 요청을 동시에 처리 할 수 없어 효율이 낮고 작업 속도가 느릴 수 있습니다.
    • 동기방식의 예시로는 콜센터 종업원이 일을 처리하는 방식이 될 수 있습니다.
      • 콜센터의 직원은 한 손님의 전화 응대가 끝난 후에 다음 손님의 응대를 진행
  • 비동기 (Asynchronous)
    • 작업이 완료되는 시간을 기다릴 필요가 없어, 자원을 효율적으로 사용 할 수 있습니다.
    • 다른 작업의 응답에 상관없이 진행되므로, 작업이 완료된 결과를 제어하기 어렵습니다.
    • 비동기 방식의 예제로는 이메일이 있습니다.
      • 누군가에게 이메일을 보냈을 때 답변을 받지 않아도 이메일을 다시 보낼 수 있음
728x90