Home > Atmosphere, Comet, JQuery, Websocket > Atmosphere 0.6 released: Transparent WebSocket and Comet support, JQuery support, more adoption

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.

About these ads
Categories: Atmosphere, Comet, JQuery, Websocket
  1. Nik
    June 27, 2010 at 7:24 pm

    Gogo Atmosphere!
    /me getting very excited about using this framework. :D

  2. andy m
    September 22, 2010 at 12:28 am

    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.

    • September 23, 2010 at 5:38 am

      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!

  1. June 25, 2010 at 10:40 am

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 50 other followers

%d bloggers like this: