- 동기 (Synchronous)
- 말 그대로 동시에 일어난다는 뜻 (요청-응답)
- 클라이언트가 서버에 요청을 보내면 시간이 오래걸리더라도 요청한 자리에 결과가 주어져야 함.
(응답(결과)가 와야지만 다음 동작이 가능함 - 응답 올 때 까지 다음 동작은 대기)
- 장점 :
1) 순차적+직렬적 임무수행
2) 설계 간단 + 직관적
3) 요청과 결과가 한 자리에 동시에 일어남.- 단점 :
0) 응답 받으면 페이지 전체 리소스를 다 불러옴
= 페이지 리로드 = 불필요한 리소스 낭비
1) 응답(결과)이 와야 다음 동작 가능 (응답을 받기 전까지는 다음 동작 대기)
= 데이터 기다리느라 서비스 대기 시간 발생 = 느릴 수 있음.
- 비동기 (Asynchronous)
- 동시에 일어나지 않음.
- 필연적으로 다중 스레드가 작동하는 멀티태스킹 작업
- 웹페이지를 리로드하지 않고 데이터를 불러오는 방식
- 필요한 부분만 불러와 사용 가능.
- 결과가 주어지는데 시간이 걸리더라도 그 시간 동안 다른 작업을 할 수 있으므로 자원을 효율적으로 사용
원본이 누구인지 모르겠는데,, 구글에 동기 비동기 검색하니까 나온 아주 이해하기 쉽게 나와있는 그림.
이 그림이 많길래 나도 붙임..