반응형
Ajax는 Asynchronous JavaScript And XML의 약어로 언어나 프레임 워크가 아닌 구현하는 방식을 의미합니다.
데이터를 이동하고 화면을 구성하는데 있어서 웹 화면을 갱신하지 않고 필요한 데이터를 서버로 보내고 가져오는 방법입니다.
화면 갱신이 없어서 사용자 입장에서는 매우 편리하고 빠르게 작업을 처리하는 것처럼 느끼게 합니다. 하지만, 동적으로 화면을 구성하는 만큼 개발자의 구현은 복잡해 집니다.
데이터 전송
Ajax는 앞서 말했 듯 서버와 클라이언트(사용자)간에 데이터를 이동하고 화면을 구성하는 구현 방식입니다.
Ajax의 구현에 들어가기 앞서 Ajax에서의 데이터 전송은 어떤식으로 진행 되는 가에 대해서 살짝 살펴보고 가겠습니다.
그림 1 : 동기식 데이터 전송
위 그림1은 동기식 데이터 전송에 대한 그림 입니다.
동기화란 사전적 의미로 "작업들 사이의 수행 시기를 맞추는 것. 사건이 동시에 일어나거나, 일정한 간격을 두고 일어나도록 시간의 간격을 조정하는 것"을 말합니다.
즉, 웹 화면 구성에서의 동기화란 위 그림1 처럼 서버로 데이터를 요청하고 응답이 오는 시간동안 작업을 멈추고 기다리는 것을 뜻합니다.
예를 들면 수 많은 웹에서 로그인을 할 때 아이디와 패스워드를 입력하여 서버로 전송하고 서버로 부터 응답을 받은 후 로그인 성공, 실패 웹 페이지로 이동 하는 것이 대표적인 동기식 데이터 전송입니다.
그림 2 : Ajax 통신
위 그림 2는 Ajax 통신에 대한 그림입니다. Ajax는 비동기 식으로 데이터 전송을 진행합니다.
위 그림2 처럼 서버로 데이터를 요청하고 응답을 기다리는 동안 웹은 자신의 다른 업무를 진행하고 응답이 오면 그 후 작업을 진행 합니다.
즉, 사용자 입장에서는 화면 갱신도 없고, 요청-응답 사이 시간에도 다른 일을 진행 할 수 있기 때문에 편리하고 빠르게 작업을 처리하는 것처럼 느낍니다.
반응형