Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Server push: comet vs ape?

I've read a little about comet and also APE.

Which one is better? I want the users to see other users updated content. Like Google Wave.

And in comet, there are 2 versions: iframe vs traditional ajax. what is the difference and which is better. I dont quite understand it.

Thanks.

like image 572
ajsie Avatar asked Jan 02 '10 12:01

ajsie


2 Answers

Comet is a set of techniques useful for developing realtime applications. You have two main implementations: streaming and long polling.

In regular http requests the user sends the request to the server, receives the data (html, scrips, etc) and closes the connection - end of story. In streaming the connection is never closed by the client or the server, there's a single connection shared by both parties.

In long polling, you have a recurring connection that waits for a response. Basically, the browser sends a request to the server and sits there waiting until the server responds (the server only responds when he has new data for the client), then the connection is closed and it's up to the browser to reopen a connection, and the cycle repeats :) Of the two, this is the most used.

Comet in the browser typically requires a web server optimized for large numbers of long-lived HTTP connections, and a JavaScript client to communicate with the Comet server. So Ape is an installable server and Comet is the paradigm on which it is based. Here you have a list of comet implementations: http://cometdaily.com/maturity.html

like image 117
scc Avatar answered Sep 30 '22 09:09

scc


Comet = Umbrella term for the technology also known as "reverse ajax" or "long polling"

APE = An implementation of Comet technology.

You can think of Comet being a certain make of car while APE is the model.

See also:

http://en.wikipedia.org/wiki/Comet_%28programming%29

http://www.ape-project.org/ajax-push.html

like image 40
Christopher Tarquini Avatar answered Sep 30 '22 07:09

Christopher Tarquini