Push vs Pull

June 29, 2007

Yes, I love Ajax, heavy downloads, gimmicky names and sites and all. Yes, the push vs pull debate is so 1999. Not in the Ajax world where heavy loads can bring your server to its knees in a matter of minutes unless your Ajax is properly optimized.

Engin Bozdag, Ali Mesbah, and Arie van Deursen of the Delft University of Technology have compiled a technical report on various push versus pull techniques of building Ajax applications based on an example application that they built.

Their conclusion?

We have compared pull and push solutions for achieving web-based real time event notification. The contributions of this paper include the experimental design, a reusable implementation of a sample application in push and pull style as well as a measurement framework, and the experimental results.

Our experiment shows that if we want high data coherence and high network performance, we should choose the push approach. However, push brings some scalability issues; the server application CPU usage is 7 times higher as in pull. According to our results, the server starts to saturate at 350-500 users. For larger number of users, load balancing and server clustering techniques are unavoidable.

Worth a read if your team is developing an Ajax application.