2011-09-25 2 views
1

저는 저의 석사 학위 논문을 오래 전부터 연구하고 있습니다. 실시간 웹 응용 프로그램에 관한 것입니다. 이제 Node.js와 긴 폴링을 비교하고 싶습니다.혜성 벤치마킹 응용 프로그램

나는 ab, autobench 등의 벤치마킹 도구를 알고 있지만 실제로 응용 프로그램을 테스트하지는 않습니다. 서버에 요청을하면 요청이 처리되고 새로운 요청이 이루어집니다. 내가 필요한 것은 오랜 시간 동안 웹 페이지에 '머무를'벤치마킹 도구이기 때문에 실제 사람들을 시뮬레이션 할 수 있습니다.

예 : Node.js와 긴 폴링 (PHP) 모두에서 데모 채팅을 만들었습니다. 이제는 약 100 초 동안 약 30 초 동안 채팅을 계속하면서 테스트하고 싶습니다.

이 목표에 도달하는 방법에 대한 제안이있는 사람이 있습니까?

미리 감사드립니다.

+0

소프트웨어 스택 (node.js)과 기술 (긴 폴링)을 비교할 수 없습니다. 그건 완전히 어리석은 짓이야! 나는 당신이 정말로 node.js가 무엇인지 이해하지 못한다고 생각합니다. 그리고 PHP에서 구현 된 긴 폴링? 최악의 아이디어, PHP는 이것을위한 것이 아닙니다. 모든 솔루션은 추악한 해킹입니다. –

+0

@TobiasP. 내 목표를 오해 한 것 같아. 나는 Node.js가 무엇인지 완벽하게 알고 있습니다. 내 목표는 예를 들어 node.js가있는 데모 응용 프로그램과 PHP (긴 폴링 또는 짧은 폴링)가있는 동일한 데모 응용 프로그램입니다. 그런 다음 두 가지를 비교하고 실제 프로젝트에 어떤 기술을 사용하고 싶은지 확인하고 싶습니다. 또한 PHP가 아닌 경우 어떻게 긴 폴링을 구현해야합니까? – user963397

답변

0

이제 Node.js와 긴 폴링을 비교하고 싶습니다. 당신은 예를 들어 PHP에서 만든 유사한 응용 프로그램과 Node.js를 만들어 롱 폴링 응용 프로그램을 비교할 수 있도록

롱 폴링 자체는 플랫폼 불가지론 웹 푸시 기술입니다.

내가 필요한 것은 의 웹 페이지에 '유지'되는 벤치마킹 도구로 실제 사람들을 시뮬레이션 할 수 있습니다.

클라이언트 연결을 시뮬레이트하는 다른 서버 응용 프로그램을 만들 수 있지만이 응용 프로그램은 긴 폴 서버 응용 프로그램과 동일한 컴퓨터에서 호스트되지 않아야 클라이언트와 서버 사이에 거의 "대기 시간이 거의 없습니다. 이 방법조차도 "실제 인간"클라이언트 (클라이언트 연결을 시뮬레이션하는 서버 응용 프로그램은 동일한 출처가 될 것이므로 "생산과 같은 테스트가 없음")로 인해 정확한 환경을 제공하지 못할 수도 있습니다. 하지만 벤치 마크 데이터를 수집하기 위해 긴 폴링 서버를 테스트 할 수있는 거친 환경을 제공 할 수 있습니다. 예를 들어 다양한 브라우저 전송 시뮬레이션을 위해 socket.io는 this kind of application입니다.

+0

다른 해결책을 찾은 것 같습니다. 셀레늄 RC (http://seleniumhq.org/projects/remote-control/). 남은 유일한 문제는 클라이언트 100 대를 테스트하고 싶을 때 셀레늄이 클라이언트 머신에서 100 개의 브라우저 세션을 열 것입니다. 나는 a) 백그라운드에서 이것을 실행하는 방법을 찾을 필요가있다. b) 그것을 여러 컴퓨터에 퍼뜨려 라. – user963397