Reverse Ajax

From Wikipedia, the free encyclopedia

Jump to: navigation, search

Reverse Ajax refers to an Ajax design pattern that uses long-lived HTTP connections to enable low-latency communication between a web server and a browser. Basically it is a way of sending data from client to server and a mechanism for pushing server data back to the browser.[1][2]

This server–client communication takes one of two forms:

  • Client polling, the client repetitively queries (polls) the server and waits for an answer.
  • Server pushing, a connection between a server and client is kept open, the server sends data when available.

Reverse Ajax describes the implementation of any of these models, including a combination of both. The design pattern is also known as Ajax Push, Full Duplex Ajax and Streaming Ajax.


[edit] Examples

The following is a simple example. Imagine we have 2 clients and 1 server, and client1 wants to send the message "hello" to every other client.

With traditional Ajax (polling):

  • client1 sends the message "hello"
  • server receives the message "hello"
  • client2 polls the server
  • client2 receives the message "hello"
  • client1 polls the server
  • client1 receives the message "hello"

With reverse Ajax (pushing):

  • client1 sends the message "hello"
  • server receives the message "hello"
  • server sends the message "hello" to all clients

Note that with reverse Ajax less traffic is generated and the message has been transferred with less delay (low-latency).

[edit] See also

[edit] References

  1. ^ Crane, Dave; McCarthy, Phil (July 2008) (in English). Comet and Reverse Ajax: The Next Generation Ajax 2.0. Apress. ISBN 1590599985. 
  2. ^ Martin, Katherine (2007-03-22). "Developing Applications using Reverse Ajax"., O'Reilly and CollabNet. 

[edit] External links

Personal tools