공룡호가 사는 세상 이야기

Ajax의 출현은 기존의 웹 애플리케이션 개발 방식을 완전히 뒤엎었다.
기존의 정적인 HTML 문서에서 사실상 불가능했던 획기적인 기능을 구현해 줄 수 있도록 해 주며, 특별한 프로그램을 로컬 환경에 설치하지 않고서도 로컬 환경에서 작동하는 각종 APP들의 기능을 웹 상에서 바로 구현할 수 있다는 점이 Ajax에 주목하는 많은 이유들 중 하나이다.

그런데, 이러한 Ajax의 출현으로 많은 이들이 Ajax를 도입/적용하면서 문제점들이 생겨날 수 있다는 점에 주목하자. 어쩌면 사소한 문제라고 생각할지는 모르나 사실은 그렇지 않다.
Ajax가 사이트를 구할 수 있느냐, 망치느냐는 Ajax를 사용해야 할 부분과 시점을 얼마나 정확하게 판단하느냐에 따라 달라진다.

본문 내용 중 일부를 요약하자면 다음과 같다.
Ajax를 이용, 페이지의 일부분을 자동으로 업데이트하는 것은 확실히 매력적이고 참신하다. 하지만 이런 페이지들이 웹 서버에는 악몽이 될 수도 있다. 하루에 1000명이 방문하는 소규모 웹 사이트라면 큰 문제가 되지 않겠지만, 사이트를 구성하는 각각의 웹 페이지가 Ajax를 사용해서 1초마다 리프레시되고, 한 명이 평균적으로 10분간 페이지에 머무른다고 가정하면, 사이트는 갑자기 하루에 60만 페이지 요청을 처리해야 하는 부담을 안게된다. 단순히 Ajax를 적용한 것 뿐인데 말이다.
즉, 실시간일 필요가 없는 웹인가를 판단해야 한다는 의미가 된다.

또한, 사이트가 Ajax를 사용해 너무 잦은 업데이트를 하게 되면, Back과 Forward버튼 그리고 북마크가 깨진다는 것. 사용자는 Back버튼을 클릭하여 이전 페이지나 뷰로 넘어가기를 원하지만 실제로는 초기 뷰를 표시하는 등과 같이 사용자 경험을 무시하게 되는 결과를 낳을 수도 있다는 점이다.

이 외에도 Ajax를 이용하여 더 나은 웹을 만들고자 하는 노력은 곳곳에서 이루어지고 있으나, 무차별적인 적용은 오히려 해가 된다는 것을 경고하고 있다. 그것을 사용해야 할 부분과 시점을 명확히 판단하는 것.

자주 발생할 수 있는 문제들을 피하고 경험을 증진할 수 있도록 하기 위해 IBM developerWorks의 다음 Article을 참고하자.

링크 : http://www.ibm.com/developerworks/kr/library/wa-aj-when/