2011-01-22 68 views

回答

1

你如何量化性能?

WebService標記用於調用SOAP WebService。 SOAP請求非常羅嗦,導致大量數據來回傳遞比如果您使用AMF。如果使用WebService,您還必須在Flex客戶端中編寫解析代碼以使數據有用。

RemoteObject標記用於通過Flash Remoting網關進行AMF調用。 AMF是一個二進制文件格式,並且已經顯示出在服務器和Flash之間的數據傳輸的文件大小更小。 AMF還提供了一些內置的服務器端數據類型(CFC)到客戶端數據類型(AS3對象)的轉換。

你應該檢查出James Ward's census application進行一些性能比較。

如果您使用ColdFusion作爲您的後端,那麼在Flex前端使用WebService而不是RemoteObject將是愚蠢的。我需要使用您的服務來支持SOAP客戶端,可以使用相同的CF代碼將SOAP Web服務作爲RemoteObject接口公開,而無需在您的端更改任何代碼。

0

如果我沒有記錯(並且你要確認這一點,因爲我可能是錯的)一個WebService專門設計用於通過SOAP使用HTTP進行工作。這就像嚴格類型的HTTPRequest。

但是,RemoteObject使用AMF進行​​傳輸 - 這意味着您不是來回發送頭文件,而是基本上創建了您要傳輸的任何二進制流。如果我沒有記錯的話,這應該快得多。我傾向於通過WebService使用RemoteObject,因爲那樣我就不需要搞亂SOAP。再加上RemoteObject,你可以做類映射,例如你可以強有力地鍵入從PHP返回的值對象,你的應用程序可以確切地知道你的數據符合什麼時間。

相關問題