9.1. HTTP Streaming

In the time before broadband Internet access was available to the masses, browser developers looked for ways to speed up the perceived rendering time of web pages. One such method is called progressive rendering; in this method rendering of the page begins as soon as the <body> tag is received, ensuring that the site display begins as soon as possible. This is the effect seen on long web pages when the vertical scrollbar continues to grow as the page is being loaded. In this circumstance, the browser is completing the displaying of the page as new information is received, creating a longer and longer page with each passing second. This same effect can be observed when connecting to servers that are experiencing very heavy traffic as the server struggles to keep up with the requests.

Consider what's happening when a page is being rendered progressively. The opening <body> tag is read, and then some more data is received. Some time passes. Some more data is received. This pattern is repeated until the entire page has been downloaded and is being displayed to the user. But how does the browser know how long to wait for new data? Further, how does it know how much more data is coming? The answer to both questions is that the browser has no idea. This is the essence of HTTP streaming.

NOTE

HTTP streaming is frequently mislabeled as Persistent HTTP, which has nothing to do with this technique. Persistent HTTP is simply a way of keeping a connection open so that numerous ...

Get Professional Ajax, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.