What’s New in Atmosphere 0.7?
Atmosphere’s Broadcaster concept makes it quite easy to plug in any Cloud technology.
The Atmosphere web framework project has just announced its
0.7 release. In this interview, JAXenter speaks to project lead
Jean-Francois Arcand, on what’s new in this latest release.
JAXenter: Can you give us an introduction to
the Atmosphere project?
Jean-Francois Arcand: Atmosphere is a web
framework that enables real time web application. Atmosphere is
similar to what Socket.io/node.js offer, but for the Java
ecosystem. Atmosphere offers both client and server side
components, and allows total abstraction of the transport, e.g
websocket, comet or normal http polling.
JAXenter: With this release, the Atmosphere-GWT
project is now fully integrated into Atmosphere. What challenges
did you face, making this integration possible?
Jean-Francois: It required a minimum of changes
to the Atmosphere runtime to make GWT work smoothly. Jersey, Apache
Wink and Spring Roo are also natively supported by the Atmosphere
Runtime, so it is clear the core framework is easily
JAXenter: How does Atmosphere 0.7 enable
multiple serves to communicate in a cloud environment?
Jean-Francois: Atmosphere’s Broadcaster concept
makes it quite easy to plug in any Cloud technology. The challenge
when scaling real time applications is to make sure events are
shared across server in a timely manner. Atmosphere’s Broadcaster
concepts helps implementing such events distribution in a cloud.
The framework currently ships with support for XMPP, Redis, JGroups
and ActiveMQ (JMS), and we are planning to add support for JCloud
in the next version.
JAXenter: XMPP is a new communication channel
in Atmosphere 0.7. What are the benefits, of adding XMPP
Jean-Francois: As I explained above, XMPP can
be used to share events amongst servers. When Atmosphere is used
inside a cloud, it is important that events get distributed amongst
server instances (just think about a chat…message occurring on
server 1 needs to be propagated to server 2). XMPP is one of the
transports we support for achieving that goal.
JAXenter: What are the next steps for the
Jean-Francois: Native support for Socket.IO,
Flash support etc.