2011-01-22 20 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返回的值对象,你的应用程序可以确切地知道你的数据符合什么时间。

相关问题