음, httpservice를 사용하는 프로젝트에서 원격 객체 (Amfphp)를 사용하려고합니다. 나는 그것이 나의 신청을 더 빠르게 할 것이다라고 들었다. 하지만 테스트 목적을 위해 DataGrid에서 Amfphp를 시도했을 때 httpservice가 더 오래 걸리는 것을 발견했습니다. 여기까지 내가 한 일이있다.Amfphp가 Flex-4에서 느리게 작동합니다.
는 AS-3의 PHP 함수를 호출하는 코드 :
public function init():void{
var params:Array = new Array();
params.push("1234");
_amf = new RemoteObject;
_amf.destination = "dummyDestination";
_amf.endpoint = "http://insight2.ultralysis.com/Amfphp/Amfphp/";//http://insight2.ultralysis.com
_amf.source = "manager1";
_amf.addEventListener(ResultEvent.RESULT, handleResult);
_amf.addEventListener(FaultEvent.FAULT, handleFault);
_amf.init(params);
}
public function handleResult(event:ResultEvent):void{
myGrid.dataProvider = event.result.grid;
}
와 MySQL 데이터베이스에서 데이터를 가져 오기 위해 PHP 함수 :
class output{
public $grid;
public $week;
}
function form()
{
$arrayOut = new output();
$arrayOut->grid = $this->gridValue();
$arrayOut->week= $this->getAllWeek($this->ThisYear);
return $arrayOut;
}
모든 것이 잘 작동합니다. 그러나 280 행의 데이터를 가져오고 렌더링하는 데 약 5 초가 걸립니다. 누구나 빨리 할 수 있도록 도와 주시겠습니까? 이미 최적화 팁을 시도했습니다 silexlabs
패킷 스니퍼를 사용했으며 통계는 다음과 같습니다. 대기 시간은 대부분 5 초 정도 소요됩니다. 대기 시간이란 무엇입니까? 도움이 필요합니다.
어머보다는 불행하게도 느립니다! 나는 사용하고있는 amfphp 버전에 대해서는 언급하지 않았다. 그것은 Amfphp 2.0입니다. –
AMF 직렬화 또는 다른 이유로 인해 이것이 느린지를 판단하는 것은 어렵습니다. 그것은 그 기능을 통해 데이터베이스 물건에 어떤 둔화가 있는지 확인하기 위해가는대로 클럭 출력을 추가하려고합니다. 그렇지 않다면 AMFPHP가 매우 느릴 수도 있습니다. –
James Ward의 답변에 감사드립니다. 나는 시계 출력을 시도했다. amfphp의 서비스 브라우저에서 400ms가 걸리고 동일한 매개 변수를 사용하는 동일한 기능이 플렉스 애플리케이션에서 7/8 초 걸립니다. –