동기 : 요청과 결과가 동시에 일어난다는 약속
마치 요청 후 결과가 바로 나와야한다는 것으로 해석될 수 있지만 그것이 아닌
한번 요청하면 결과가 나올때까지 기다려야한다는 것이다
"요청 -> 처리중 -> 결과" 한 사이클이 끝나야 다른 작업을 할 수 있음
예) 게임에서 아이템을 직접 제작할 때 로딩을 기다리는것
비동기 : 요청과 결과가 동시에 일어나지 않는다는 약속
요청 후 결과가 나오는데 시간이 걸린다는점때문에 동기방식보다 나쁘다라고 생각될 수 있지만
분명한 차이점이 있다
작업 사이클이 종료될 때까지 사용자가 기다려야하는 동기 방식과는 달리
비동기 방식의 경우 결과가 나올때까지 다른 작업을 하며 기다릴 수 있다는 것이다
예를 들어 A가 B에게 필요한 서류를 요청하는 "서류 요청 -> 요청받은 서류 수집 -> 서류 제공" 이라는 작업이 있다면
A는 서류를 요청하고 B가 서류를 모아 다시 A에게 제공할 때까지 다른 일을 하며 기다릴 수 있다
A가 B에게 서류 요청 -> B는 요청받은 서류를 수집 -> B가 A에게 서류 제공
A는 다른 작업중 -> A가 B에게 받은 서류확인
예) 게임에서 아이템을 경매장에 올리고 팔릴때까지 다른 일을 하는것
참고한 사이트:동기와 비동기의 개념과 차이 (tistory.com)
'그 외 기술' 카테고리의 다른 글
Naver Cloud Platform 서버 세팅하기 (0) | 2021.12.07 |
---|---|
rest api 관련 읽어볼 사이트 (0) | 2021.07.29 |
내가 보려고 쓰는 Java 기초 문법 정리 (0) | 2021.07.25 |
오늘 알게된 내게 부족한 기초 지식 (0) | 2021.07.22 |
RESTful API (0) | 2021.07.22 |