Ajax는 HTML 페이지 전체가 아닌 일부만 갱신할 수 있도록 XMLHttpRequest객체를 통해 서버에 request한다. 이 경우, JSON이나 XML형태로 필요한 데이터만 받아 갱신하기 때문에 그마큼의 자원과 시간을 아낄 수 있다.
AJax가 그 자체 기술은 아니고 기존의 여러 기술을 사용하는 "새로운 접근법"이다.
요청에 대한 응답은 .html 파일로 응답하게된다. 하지만 웹이 아닌 애플리케이션의 경우 .html을 인식하지 못하기 때문에 웹과 앱 모두 사용하려면 두개의 서버가 필요하게 된다.
(.html 응답 서버/data 응답 서버)
🔸 하지만 Ajax를 사용하면 웹과 앱 서버 하나로 통일하여 사용일 가능하다.
ex) 그림판에 그림그리기
1. 화면에 그림 2. 연산 3. A그림 다운로드 4. A 그림 그리기 5. 다른 그림 그리기
동기 : 1 - 2 - 3 (3을 다운받는 동안 프로그램 stop, pending)- 4 - 5
비동기 :
1 - 2 - 3 (A그림을 다운받는 중) - 5 (3완료 call back) - 3(A그림 다운 완료) - 4 - 5 (나머지5)