웹의 발전은 브라우저 기반위에서 이루어졌다.
브라우저는 HTML 파서이자 뷰어라고 할 수 있다. 브라우저가 소화 가능한 규격으로만 통신해야한다.
**파싱(parsing : 구문 분석) 은 하나의 프로그램을 런타임 환경(예를 들면, 브라우저 내 자바스크립트 엔진)이 실제로 실행할 수 있는 내부 포맷으로 분석하고 변환하는 것을 의미합니다. 즉, 파싱은 문서의 내용을 토큰(token)으로 분석하고, 문법적 의미와 구조를 반영한 파스 트리 (parse tree)를 생성하는 과정입니다.
브라우저는 HTML을 DOM 트리로 파싱합니다. HTML파싱에는 토큰화와 트리 구조가 포함됩니다. HTML 토큰에는 시작 태그와 마침태그가 포함되며, 속성 이름과 값도 포함됩니다. 형식을 잘 갖춘 문서라면 파싱은 직관적이고 빠르게 진행될 것입니다. 파서는 토큰화된 입력값을 문서에 파싱하며, 다큐먼트 트리를 구성합니다.
반면 게임 서버는 커스텀한 클라이언트 프로그램인 게임을 위해 발전해왔다. 브라우저라는 제약이 없었고, 그러므로 반드시 HTTP프로토콜을 사용할 필요는 없었다.
게임은 반응성이 웹보다 훨씬 더 중요하기에 db에 질의하는 비용을 모두 줄여서라도 반응성을 유지하는 것이 더 중요했다.
이는 제한된 서버 자원을 잘 활용해야 동접이 높은 게임을 만들 수 있기 때문이다.
또한 반응속도와 함께, 데이터의 무결성을 보장해주어야 한다.