users@grizzly.java.net

Re: Cometd vs. Comet

From: Jeanfrancois Arcand <Jeanfrancois.Arcand_at_Sun.COM>
Date: Mon, 07 Jan 2008 10:56:04 -0500

Salut,


John C. Turnbull wrote:
> What are the reasons why someone would use Cometd instead of “standard”
> Comet with Grizzly? I am trying to choose the best technology for my
> project and your input would help.


Cometd is a framework that define how message are exchanged between the
client and the server (called the Bayeux protocol[1]). JavaScript client
library can implement the client side of cometd and interact with *any*
application server that support the bayeux protocol. So if you use
bayeux, your application will works with Grizzly/GlassFish and Jetty
(Tomcat doesn't yet support Bayeux). Cometd is an extension of Comet,
trying to unify how messages are marshaled/unmarshaled between a client
an a server. With Cometd, you only need to write the client side of an
application.

For Comet, there is no standard yet, so when you write an application,
you application will only works with the WebServer you are using (API
aren't standardized...we are working on it for Servlet 3.0). With Comet,
you also define yourself how message are exchanged between the client
and the server, when the connection needs to be suspended, etc. More
work is required with Comet, but much more powerful :-)

Thanks

-- Jeanfrancois

[1] http://svn.xantus.org/shortbus/trunk/bayeux/bayeux.html


>
>
>
> Thanks,
>
>
>
> -JCT
>
>
>