2012-10-31 36 views
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秒。什麼是延遲?需要幫助的人。請:

enter image description here

+0

哎呀慢!我忘了提及我使用的amfphp版本。這是Amfphp 2.0 –

+1

由於AMF序列化或其他原因,很難判斷這是否很慢。我試圖添加時鐘輸出,因爲它通過該函數來查看數據庫內容是否有任何放緩。如果不是,那麼AMFPHP可能非常慢。 –

+0

感謝James Ward的回覆。我試過時鐘輸出。在amfphp的服務瀏覽器中需要400 ms,並且具有相同參數的相同功能在Flex應用程序中需要7/8秒。 –

回答

0

嘗試使用amfphp 1.9

amfphp 2.x版本是不幸比1.9