apache-flex php和高延迟

zpqajqem  于 2022-10-31  发布在  Apache
关注(0)|答案(1)|浏览(112)

我有一个php文件,以前用来写带标签的xml数据。现在我试着让它基于一点remoteobject。所以我不写xml,而是尝试返回一个类对象,它包含一些大的多维数组。问题是它导致了很高的延迟。我不确定是不是我的php文件导致了延迟问题。
我的php代码:

class output{
    public $grid;
    public $week;
    public $name;
    var $_explicitType = "org.test.output";
    }

    class manager1{

    function init($params,$arrayOut)
    {   

        $action = $params[0];
        switch ($action)
        {
            case "reload":  return $this->Reload($arrayOut);break; 

            default:return $this->form($arrayOut); 
        }

    }

    private function Reload($arrayOut)
    {

        $this->getSlice();
        $arrayOut->grid = $this->gridValue();
        $arrayOut->week = 'no data';    
        return $arrayOut;       

    }

    private function form($arrayOut)
    {

        $arrayOut->grid = $this->gridValue();
        $arrayOut->week= $this->getAllWeek($this->ThisYear);
        return $arrayOut;

    }
}

AS-3代码调用php函数:

private function init():void{

        var _amf:RemoteObject = new RemoteObject();
     var params:Array = new Array(); //parameters array
     params.push("default");
     var arrayOut:output = new output();//strongly typed class
     _amf.destination = "dummyDestination";
     _amf.endpoint = "http://insight2.ultralysis.com/Amfhp/Amfphp/"; //amfphp home directory
     _amf.source = "manager1"; //the php class which will be called
     _amf.addEventListener(ResultEvent.Result, handleResult);
     _amf.init(params,arrayOut);
}

    private function handleResult(event:ResultEvent):void
        {
    datagrid.dataProvider = event.result.grid;
        }

在我的应用程序中还有一个名为output的类:

package org.test{
                public class output
                  {
                     public var grid:Array;
                     public var week:Array;
                  }
 }

我使用amfphp将值传递给flex remoteobject。

vaqhlq81

vaqhlq811#

实际上,这个问题很容易解决。您可以使用Flash Builder中的网络监视器。它会显示请求时间和响应时间,因此您可以很好地了解问题是出在PHP端还是Flex端。您还可以查看响应的大小。
请注意,与多维数组混合的远程对象可能比您想象的要大,但网络监视器将再次帮助您计算出这一点。

相关问题