2011-05-06 2 views

답변

3

화면에 모든 구성 요소가 있고 1 분 안에 모든 구성 요소를 핑 (ping)해야한다는 것은 무엇을 의미합니까? 앱을 의미 핑에 의한 경우

하는 URL의 시간 응답을 확인 무엇을, 당신은이 코드를 재생하려고 할 수 있습니다

이 특별한 아무것도 없다
var ldr:URLLoader = new URLLoader(); 
ldr.addEventListener(HTTPStatusEvent.HTTP_STATUS, ldrStatus); 

var url:String = "URL-TO-SITE"; 
var limit:int = 10; 

var time_start:Number; 
var time_stop:Number; 
var times:int; 

ping(); 

function ping():void 
{ 
    trace("pinging", url); 

    times = 0; 
    doThePing(); 
} 

function doThePing():void 
{ 
    time_start = getTimer(); 
    ldr.load(new URLRequest(url)); 
} 

function ldrStatus(evt:*):void 
{ 
    if(evt.status == 200) 
    { 
     time_stop = getTimer(); 
     trace("got response in", time_stop - time_start, "ms"); 
    } 

    times++; 
    if(times < limit) doThePing(); 
} 

URLLoader 시도가를로드 url을 입력하고 응답을 수신합니다. status200 인 경우 성공적인 "핑"을 받았습니다. 또는 탁구.

한편, 서버 측 핑 프로그램을 항상 실행할 수 있으며 플래시로 제어 할 수 있습니다.

upload-download-speedtester와 같은 앱을 의미하는 경우 해당 앱은 Loader 개체로 시작됩니다.

희망이 도움이됩니다.

편집 : 캐시 문제를 방지

, 당신은 사용할 수 있습니다

이제
ldr.load(new URLRequest(url + "?rnd="+Math.random())); 

, 사이트의 정확한 콘텐츠를 제공하지 않을 수도 있지만, 응답 시간을 예측하기 충분 수 있습니다 페이지 . 플래시.

이렇게 전체적으로 캐시를 지우고 사이트를로드하면 더 나은 결과를 얻을 수 있습니다.

+2

캐싱은 어떨까요? 브라우저는 캐시 된 응답을 두 번째로 줄 수 있습니다. – alxx

+0

+1 : 정말 좋았어요. – anemgyenge

+0

@anemgyenge : 구성 요소는 다양한 스위치, 라우터 사진을 의미합니다. 연결이 끊어지면 빨간색으로 깜박입니다. –

5

를 사용하여 .. 샘플 코드가 필요합니다.

더 이상 : ping은 실제로 ICMP 패킷이므로 Ping을 할 수 없으며 Flash에서 보낼 수 있다고 생각하지 않습니다. 하지만 ping을 시도하는 컴퓨터에서 UDP 또는 TCP 서비스가 실행 중이고 컴퓨터가 socket policy server을 실행중인 경우 Socket 클래스를 사용하여 해당 서비스에 직접 연결할 수 있습니다 (이 서비스는 다음과 같이 작동 할 수 있습니다. a 핑).

+0

좋은 답변입니다. +1 – Marty

+0

그런데 그 사람들은 www.speedtest.net에서 플래시 프로그램을 사용하여 속도와 연결성을 확인하는 응용 프로그램을 어떻게 개발 했습니까? 어떤 대안이 있습니까? –

+1

@ Chandu-Indyaah : 플래시 앱에서 서버로 요청을 보내면 필요한 ping 주소로 만들 수 있습니다. 그런 다음 서버가 결과로 응답합니다. – alxx

관련 문제