동기(Synchronous)와 비동기(Asynchronous)

동기 (Synchronous)
- 작업이 순차적으로 실행되는 것을 의미
- 한 작업이 완료되어야 다음 작업이 시작되며, 이전 작업이 완료되지 않으면 대기 상태에 놓임
- 요청을 하면, 시간이 얼마가 걸리던지 요청한 자리에서 결과가 주어져야 함
장점👍
단점❗
- 시간이 오래 걸리는 작업이 있을 경우, 블로킹(Blocking) 발생
비동기 (Asynchronous)
- 작업이 동시에 실행되거나 중간에 다른 작업을 처리할 수 있음을 의미
- 요청에 대한 결과가 그 자리에서 주어지지 않음
장점👍
- 결과가 주어지는데 시간이 오래걸려도, 다른 작업을 할 수 있으므로 자원을 효율적으로 사용
단점❗