2
嗯, 我想在使用httpservice的项目中使用远程对象(Amfphp)。我听说它会让我的应用程序更快。但是,当我尝试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;
}
而且PHP函数从MySQL数据库获取数据:
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的服务浏览器中需要400 ms,并且具有相同参数的相同功能在Flex应用程序中需要7/8秒。 –