The basic web service components are HTTPService and WebService.
WebService is used for SOAP-style RPC access.
LCDS and BlazeDS use AMF, the Actionscript Message Format, a binary data serialization that reduces the size and processing complexity of of XML formats.
BlazeDS is a subset of what’s available in LCDS, and includes ProxyService, RemoteService, and MessageService.
ProxyService is an HTTP Proxy, prinicipally used to get around the cross-domain security constraint. [rant deleted]
RemoteService uses RPC-style communication, maintaining client-side objects in Actionscript and POJOs on the server that are managed by the data service.
MessageService uses a Publish/Subscribe method, similar to RSS. Clients can both publish and subscribe to data services, which is polled either periodically, or with a ‘long poll’ that uses (I think) HTTP timeouts (e.g, chat.-style communication.) Besides text messages, Actionscript objects can be sent either in the body or as headers. It also includes support for streaming.
LCDS includes Real Time Messaging Protocol (RTMP) messages, which allow persistent connections. You can simulate a persistent connection with BlazeDS long polling, but this doesn’t scale very well.
Cold Fusion includes Flash Remoting, but I’m not interested in this, as I’m not working directly with either CF or Flash.
Third party libraries like AMFPHP, SaberAMF, Zend AMF, WebORB, RubyAMF, PyAMF, AMF.NET, FlourineFX, etc., can talk directly to Flex apps via AMF natively in the various languages (PHP, Ruby, Python, .NET), and not needing the java-based BlazeDS/LCDS from Adobe.
Clear Toolkit has something interesting called a Change Object, which they say is similar to what’s offered by Data Management Services in LCDS. It looks particularly interesting for collaboration apps like Taskboard and Harvest.
Other interesting projects include:
GraniteDS aims to be an open source alternative to LCDS, geared towards EJB3, Seam, and Spring (Java frameworks.)
SpiceFactory has another open source remoting framework. Pimento is for data managment and Cinnamon for remoting. (Parsley is an MVC framework also by SpiceFactory.)