| Tool | RTMP | HTTP
Channels |
Java
Remoting |
Audio/
Video |
Scalability | Licensing | Author |
| BlazeDS | No | Yes | Yes | No | Average | Free | Adobe |
| GraniteDS | No | Yes | Yes | No | Average | Free | Franck Wolff |
| LCDS | Yes | Yes | Yes | No | High | License | Adobe |
| Red5 | Yes | No | Yes | Yes | ? | Free | Red5 |
| Quick Summary follows… |
BlazeDS – http://opensource.adobe.com/wiki/display/blazeds/BlazeDS/
- Can scale to few hundred simultaneous connections.
- Clustering is supported.
- Automatic fall-back of channels is supported.
- No support for NIO (used for supporting a large number of user threads, with a limited pool of server threads) – depends on Web Application Servers servlet thread pool to serve requests.
GraniteDS – http://www.graniteds.org
- Has Granite Channels (http based). eg: Gravity Channel: similar to long polling of Blaze-DS. Used for data push
- The primary goal of this project is to provide a framework for Flex 2+/EJB 3/Seam/Spring/Guice/POJO application development with full AMF3/RemoteObject benefits
- No support for Servlet 3.0 (async) yet – it is in future roadmap i.e No support for NIO (used for supporting a large number of user threads, with a limited pool of threads) – depends on Web Application Servers servlet thread pool to serve requests.
LCDS – http://www.adobe.com/products/livecycle/dataservices/
- Is the big daddy of Blaze-DS. In addition to all Blaze-DS functionality, it supports RTMP, and can serve a very large number of simultaneous requests (in the order of few thousands), which it achieves by its own NIO implementation i.e it internally uses a small number of threads to serve a very large number of requests (user threads).
- Can be used in production, for free, on a single-cpu machine. For multiple cpu machines you need to buy license.
Red5 – http://osflash.org/red5
- Supports Audio/Video streaming. Uses RTMP protocol.
- Is probably the only popular free audio/video streaming tool.
- Can be deployed as a web-application.
Dec 08, 2009 @ 16:16:54
You missed one of the more popular Java products, WebORB for Java. You could put Yes, Yes, Yes, High, License, Midnight Coders in the chart. You might want to add code generation and data management to the chart. WebORB supports this and NIO remoting too. Support for NIO messaging coming soon.
Companies can get one free Community Edition license. Check it out at http://www.themidnightcoders.com/products/weborb-for-java/overview.html.
Sep 06, 2010 @ 14:54:50
Having a column about full lazy loading support would be nice (as far as I know it is GraniteDS and LCDS only)
Mar 10, 2011 @ 04:03:46
While not a Java solution, WebSync from FrozenMountain is also a potential solution for the ASP/IIS folks.
Nov 18, 2011 @ 05:21:24
THats a really nice comparison ……………but u could have add some more product like florinfx, weborb etc………..
But thanks for such a nice post………….
Mar 13, 2012 @ 13:37:05
GraniteDS supports Servlet 3.0, NIO and APR as well as earlier and specific asynchronous servlet implementations (Tomcat, Jetty, JBoss, GlassFish, WebLogic). Real-time messaging scalability, based on these asynchronous servlets, is much better than with BlazeDS.
Beside, GraniteDS isn’t a one guy project, it is supported by a large developer community and a company which offers developer and production support (see http://www.granitedataservices.com).
Mar 13, 2012 @ 13:40:08
You may also check this detailed comparison between GraniteDS and BlazeDS here: http://granitedataservices.com/blog/2011/09/13/how-graniteds-compares-to-blazeds/ (PPT presentation).