2011-01-22 1 views
0

동일한 ColdFusion 웹 서비스를 호출하고 다른 모든 요인이 동일하다고 가정하면 다음 두 태그를 사용하는 사이에 성능/속도에 차이가 있습니까?<s : RemoteObject> 및 <s : WebService>를 사용하여 ColdFusion 웹 서비스를 호출하면 성능에 차이가 있습니까?

<s:RemoteObject id="MyService" destination="ColdFusion" source="MyWSFolder.MyService"/> 

와 사전에

<s:WebService id="MyService" wsdl="http://www.myDomain.com/MyWSFolder/MyService.cfc?wsdl"/> 

감사합니다,

답변

1

실적을 어떻게 계량합니까?

WebService 태그는 SOAP WebService를 호출하는 데 사용됩니다. SOAP 요청은 매우 어리 석으므로 AMF를 사용하는 경우보다 많은 양의 데이터가 앞뒤로 전달됩니다. WebService를 사용하는 경우 데이터를 유용하게 만들기 위해 Flex 클라이언트에 구문 분석 코드를 작성해야합니다.

RemoteObject 태그는 Flash Remoting 게이트웨이를 통해 AMF를 호출하는 데 사용됩니다. AMF는 바이너리 형식이며 서버와 Flash 간의 데이터 전송을 위해 훨씬 작은 파일 크기를 제공합니다. AMF는 또한 서버 측 데이터 유형 (CFC)을 클라이언트 측 데이터 유형 (AS3 오브젝트)으로 변환하는 일부 내장 기능을 제공합니다.

성능 비교를 위해 James Ward's census application을 확인해야합니다.

ColdFusion을 백엔드로 사용하는 경우 Flex 프론트 엔드에 RemoteObject 대신 WebService를 사용하는 것은 어리석은 일입니다. SOAP 클라이언트를 서비스와 함께 지원해야 할 필요가 있습니다. 동일한 코드를 사용하여 SOAP 웹 서비스를 RemoteObject 인터페이스로 노출시킬 수 있습니다.

0

나는 (내가 잘못 될 수 있기 때문에 당신이 이것을 확인하는 것이 좋습니다)을 WebService를 정확히 기억 경우

몬테 SOAP를 통해 HTTP를 통해 작동하도록 특별히 설계되었습니다. 이것은 엄격하게 유형화 된 HTTP 요청과 같습니다.

그러나 RemoteObject는 전송에 AMF를 사용합니다. 즉, 헤더를 앞뒤로 보내지 않으면 전송하는 모든 내용의 이진 스트림을 생성하게됩니다. 내가 올바르게 기억하면 이것은 훨씬 더 빠르다고 생각합니다. WebService를 통해 RemoteObject로 작업하는 경향이 있습니다. 왜냐하면 SOAP을 사용하지 않아도되기 때문입니다. RemoteObject를 사용하면 클래스 매핑을 수행 할 수 있습니다. 예를 들어 PHP에서 되돌아 오는 강력한 유형의 값 객체가 있고 응용 프로그램에서 데이터가 준수하는 시간을 정확하게 알 수 있습니다.

관련 문제