문제

xmlhttprequests는 업데이트 빈도가 30 초 이상인 컨텐츠에 가장 적합하다는 것을 읽었습니다. 같은 기사에서는 더 빠른 주파수가 필요한 웹 앱이 소켓을 사용해야한다고 언급했습니다. 나는 이것을 언급하는 기사/책을 찾을 수 없다 (누군가가 이것을 논의하는 기사에 대한 링크를 게시 할 수 있다면 감사 할 것이다). xmlhttprequest 및 소켓에 대한 귀하의 경험이 위의 주장을 뒷받침합니까? 브라우저와 서버간에 어떤 유형의 연결을 고려해야합니까?

도움이 되었습니까?

해결책

JavaScript에는 실제 소켓 통신을 수행 할 수있는 방법이 없습니다. JavaScript에만 잠겨 있다면 (SWF 도우미, ActiveX 또는 기타 기술없이) xmlhttprequest가 최선의 방법입니다.

XMLHTTPREQUEST는 요청을 구문 분석하고 구문을 형성하고 결과를 구문 분석하는 것과 관련된 오버 헤드로 인해 (적어도 이론적으로) 더 빈번한 업데이트에 적합하지 않습니다. 이론적으로 소켓 연결은 모든 요청 생성을 거치지 않고 서버로 다시 파이프를 제공합니다.

소켓 사용의 단점 (JavaScript가 직접 지원하지 않는다는 사실 외에도)은 소켓 연결을 통해 다시 오는 데이터에 맞춤 직렬화 형식을 사용하는 경우, 작성된 코드 만 결과를 소비 할 수 있다는 것입니다 (공개되지 않는 한. 직렬화 형식). 그것은 당신에게 문제가되지 않을 수도 있지만, 일부는 Showstopper입니다 ...

SWF 도우미가있는 JavaScript 소켓 데모는 다음과 같습니다.

socketjs

다른 팁

업데이트 빈도보다 답에 더 많은 것이 있습니다. 동시 사용자의 수는 혜성 (이것은 더 많은 기사로 이어지는 키워드입니다) UP 서버 연결을 사용하고 확장되지 않을 수도 있습니다. 최신 웹 서버는 더 많은 연결을 처리하는 데 더 나은 것이지만 자신의 환경에서는 테스트해야합니다.

저에게는 30 초조차도 Ajax를 사용하기에는 너무 자주입니다. 내 한도는 아마도 1 분 정도입니다.

이 기사는 이제 날짜로 간주되어야합니다. 최신 브라우저는 1 초의 빠른 요청을 처리하는 데 어려움이 없습니다. Google이 검색에서 얼마나 빨리 추측 할 수 있는지 살펴보십시오. 간단한 xmlhttprequest 호출. 플래시가 없습니다. ActiveX가 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top