Frank,

RPC IS LESS THAN 25% OF FLEX DATA SERVICES!!!

Flex Data Services is so much more that RPC. This entire discussion is really 
FDS.RPC to WebServices. 

FDS contains 4 major parts:

1. Messaging - ASMessaging and JMSMessaging
2. Data Management - Data Synchronization and Distributed ArrayCollections
3. Web Tier Compiler - Compilation of AS/MXML on the server side.
4. RPC - Remoting and WebService Proxy

Using Web Services directly affects user experience!!! 
Using Web Services directly affects user experience!!! 
Using Web Services directly affects user experience!!! 

Web Services burns up player performance that you could be using to make the 
user experience better. When working in Flash Player, everything affects 
performance. If you abuse the player in one area, you limit what you can do 
elsewhere before the player starts to slow down. The Flash Player (like all 
software) is limited in capability; if you spend that capability doing hard 
things (read Web Services) then you will not be able to do other things. On a 
high quality machine, WS can take 400ms, but on a slower machine it can take 
3-10 seconds for a single call and the larger the data exchanged, the worse it 
gets. Not good.

With Flash Player it is important to keep things light and fast. Web Services 
are abusive to the Flash Player runtime. Support is included for integration 
purposes but it was really not designed as an optimized way to exchange data. 

Web Services view:

Flash Player Receives XML ASCII Text
XML Parsing → XML Parsing!!!
SOAP Parsing occurs to AS Objects → Traverse SOAP Objects Recursively!!!
Objects are passed into events

RemoteObject:
Flash Player Receives AMF Data
AMF Binary Decoding → Direct to typed objects.
Objects are passed into events

I am sure there are many smart people out there who will get WebServices to 
work well for them with Flex. It is a lot of hard work to make this work well 
and I have only seen one company do it really well. I do not doubt that others 
will make this work reliably but I question its use. It will affect performance 
which is why AMF was created in the first place as an optimized data exchange 
format for Flash Player. 

One of the key advantages for WebServices is the wide availability of Web 
Service clients for any language. With AMF we only have one client( Flash 
Player ) and several AMF servers. One key enterprise objection to using AMF is 
the lack of AMF  clients for integration. 

Cases:
- PHP form could remote to FDS
- C++ application joins FDS messaging as a client
- Java process remotes to FDS
- Python process remotes to Data Services for Ruby (MidnightCoders)
- C# remotes data with FDS as a client

Part of the distributed computing revolution is the realization that anything 
can be both a client and a server. One of the problem areas in FDS is that only 
Flash and Java:JMS can participate within the FDS as clients.

Would non-flash clients for AMF and Messaging help?

Regards,

Ted Patrick
Flex Evangelist
Adobe Systems Incorporated

________________________________________
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Franck 
de Bruijn
Sent: Wednesday, August 23, 2006 10:33 PM
To: [email protected]
Subject: RE: [Junk E-Mail - LOW] [flexcoders] Re: Choice of backend systems - 
which provides

Hi Ted,
 
We all understand your arguments 1 and 2. But in the end, and that’s already 
identified in this topic, it’s the user experience that counts. If it does not 
suffer by using web services, it’s not an issue! I’d like to hear the first 
story that changing webservices by AMF increased the user experience 
significantly and sealed a certain business proposition.
 
For argument 3 ‘Developer Productivity’ it’s true that developers need to 
program more lines of code to obtain the same result (having your webservice 
result as an ActionScript object), which is, I admit, error prone. But in the 
total view of the costs of a development project ... it will not make much of a 
difference. The actual additional lines of code I’m talking about, however, are 
very easy to generate from a model if you wish.
 
Again, FDS is cool, really true and it does have its place. But for many 
applications FDS (including the extra features messaging and data management) 
is neither an option nor necessary.
 
Cheers,
Franck 


--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 

Reply via email to