장점
- 코드 작성 쉬움
- 요청 응답 순차적
- 요청과 응답 연결 : 에러 처리 쉬움
단점
- 전체 페이지 리로딩 : 속도 성능 저하
- 요청 보낸 후 대기 하기 때문에 다른 작업 불가
장점
- 필요한 부분만 업데이트 : 속도 성능 향상
- 자원 시간 절약
- 요청 보낸 후 다른 작업 가능
단점
- 복잡함
- 요청과 응답의 순서 보장안됨
- 요청과 응답이 분리되어있어 에러 처리 어려움
| 특징 | 비동기(Async) 통신 | 동기(Sync) 통신 |
|---|---|---|
| 요청과 응답이 동시에 일어나지 않는다. | O | X |
| 웹페이지의 일부분만 업데이트한다. | O | X |
| 코드의 복잡도가 증가할 수 있다. | O | X |
| 요청과 응답의 순서를 보장할 수 없다. | X | O |
| 에러 처리가 어려울 수 있다. | O | X |
| 웹페이지의 속도와 성능을 향상시킬 수 있다. | O | X |
| 사용자 경험을 개선시킬 수 있다. | O | X |
| 병렬적으로 여러 작업을 수행할 수 있다. | O | X |
sync와 async는 작업을 순차적으로 수행할지 아닌지에 대한 관점이다.