Atmosphere 0.6 released: Transparent WebSocket and Comet support, JQuery support, more adoption
Atmosphere 0.6 has finally arrived! This release is the biggest ever release we have made so far and includes many bugs fixes and tons of new features:
WebSocket support
The Websocket specification is now supported. You can now write portable Websocket applications and deploy them into a Web Server that support the protocol. If the Web Server isn’t yet supporting the specification, Atmosphere will emulate Websocket by using Comet instead (long polling or http-streaming technique). So you are guarantee that your application will works independent of the transport used: Websocket or Comet.
JQuery Plug In supporting WebSocket and Comet
Starting with 0.6, Atmosphere ships with a JQuery Plug In which can be used for building powerful Client side application. The Plug In support Websocket and Comet and able to transparently decide which one to use based on what the server and the client support.
New Framework supported
Atmosphere has been successfully tested with the following framework: Spring, Struts, Wicket, JSF, Akka, GWT, Grails, JRuby on Rails, etc.
New Programmatic API
Atmosphere 0.6 supports new API which complement our existing set of annotations:
@GET
public SuspendResponse<String> subscribe() {
return new SuspendResponse.SuspendResponseBuilder<String>()
.broadcaster(topic)
.outputComments(true)
.addListener(new EventsLogger())
.build();
}
Improved Server Sides Events Support
The Broadcaster API and Factory has been improved and the result can be seen here.
Server Sides Events Caching Support
When using Websocket or Comet, a connection can always be closed by an unexpected network failure, a time out, a proxy, etc. If some Server Side events happens during that downtime, there is a risk your application may have missed those events. Our new API called BroadcasterCache can be configured to avoid that situation by caching Server Sides Events based on some custom headers, timestamps, sessions, etc. That way your application is guarantee of never loosing any Server Sides Events for any reasons. As you as you reconnect, Server Sides Events can be retrieved. We currently ship with two built-in BroadcasterCache: Header and Session, but any application is free to write its own.
Atmosphere Spade Server Deployer
Our small all-in-one Web Server can now fully deploy war file
java -jar atmosphere-spade-server.jar any_web_app.war
This tiny Web Server can easily be used to write unit test as demonstrated here.
New Web Server Supported
We now support Tomcat 7, GlassFish 3.1 WebSocket and Resin 4.0.
Improved Unit Test coverage
We have now more than 150 units covering Atmosphere functionality. Web Server which support an embed interface are now automatically tested: Jetty, Tomcat and Grizzly.
Bug Fixes and Improvements
Our growing popularity has a price! Between 0.5 and 0.6 we fixed almost 50 issues and improved a lot of API.
What’s next?
We started discussing 0.7 features: More Web Server supported like Netty, Stomp protocol supported, More JQuery integration, etc. Jump in the discussion if you are interested.
For any questions or to download Atmosphere Client and Server Framework, go to our main site and use our Nabble forum (no subscription needed), or follow the team or myself and tweet your questions there! You can also checkout the code on Github.

Gogo Atmosphere!
/me getting very excited about using this framework.
is there any benchmarking for atmosphere? the framework looks really good…but do we have an idea of how many users, messages /sec etc the atmosphere framework would allow in a sample scenario.
Salut, it really depends on what the application is doing…so for now I haven’t took the time to benchmark the framework. For sure that’s something I want to look at.
Thanks!