This link has been bookmarked by 346 people . It was first bookmarked on 30 Oct 2006, by Serge.
-
26 Oct 11
-
12 Oct 11
-
28 Sep 11
-
27 Sep 11
-
08 Aug 11
-
21 Jul 11
-
13 Jul 11
-
15 Jun 11
-
Measuring the effective bandwidth of your users
You can measure the effective bandwidth of your users on your site relatively easily, and if the effective bandwidth of users viewing your pages is substantially below their available downstream bandwidth, it might be worth attempting to improve this.
Before giving the browser any external object references (<img src="...">, <link rel="stylesheet" href="...">, <script src="...">, etc), record the current time. After the page load is done, subtract the time you began, and include that time in the URL of an image you reference off of your server.
-
-
W.W. WebsterIt is widely accepted that fast-loading pages improve the user experience. In recent years, many sites have started using AJAX techniques to reduce latency. Rather than round-trip through the server retrieving a completely new page with every click, often the browser can either alter the layout of the page instantly or fetch a small amount of HTML, XML, or javascript from the server and alter the existing page. In either case, this significantly decreases the amount of time between a user click and the browser finishing rendering the new content.
However, for many sites that reference dozens of external objects, the majority of the page load time is spent in separate HTTP requests for images, javascript, and stylesheets. AJAX probably could help, but speeding up or eliminating these separate HTTP requests might help more, yet there isn't a common body of knowledge about how to do so.
While working on optimizing page load times for a high-profile AJAX application, I had a chance to investigate how much I could reduce latency due to external objects. Specifically, I looked into how the HTTP client implementation in common browsers and characteristics of common Internet connections affect page load time for pages with many small objects. -
03 Jun 11
-
16 Apr 11
-
01 Apr 11
-
22 Mar 11
-
27 Dec 10
-
24 Nov 10
-
15 Nov 10
-
11 Nov 10
-
09 Nov 10
-
17 Aug 10
-
20 Jul 10
-
12 May 10
-
22 Jan 10
-
20 Jan 10
-
05 Jan 10
-
16 Dec 09
chudes netOptimizing Page Load Time
It is widely accepted that fast-loading pages improve the user experience. In recent years, many sites have started using AJAX techniques to reduce latency. Rather than round-trip through the server retrieving a completely new p -
30 Oct 09
-
28 Oct 09
-
18 Oct 09
-
21 Aug 09
-
12 Aug 09
-
29 Jun 09
-
24 Jun 09
-
17 Jun 09
-
03 Jun 09
-
05 May 09
-
04 May 09
Rodrigo de OliveiraEstudo de carinha do Google sobre otimizações possíveis para melhorar o tempo de carregamento de páginas web.
-
30 Apr 09
-
06 Apr 09
-
26 Mar 09
-
14 Mar 09
-
IE, Firefox, and Safari ship with HTTP pipelining disabled by default
-
For objects under roughly 8k in size, you can double his effective bandwidth by turning keepalives on and spreading the requests over four hostnames. This is a huge win.
-
Measuring the effective bandwidth of your users
-
use a "slow proxy" that simulates bad DSL in New Zealand
-
-
05 Mar 09
-
10 Feb 09
-
02 Feb 09
-
30 Jan 09
-
26 Jan 09
-
16 Jan 09
-
11 Dec 08
-
12 Sep 08
-
10 Sep 08
-
18 Aug 08
-
17 Aug 08
-
12 Aug 08
-
07 Aug 08
-
05 Jun 08
-
04 Jun 08
-
15 Apr 08
-
13 Apr 08
-
27 Mar 08
-
26 Mar 08
-
21 Mar 08
-
03 Mar 08
-
23 Feb 08
-
06 Feb 08
-
25 Jan 08
-
You can measure the effective bandwidth of your users on your site relatively easily, and if the effective bandwidth of users viewing your pages is substantially below their available downstream bandwidth, it might be worth attempting to improve this.
Before giving the browser any external object references (<img src="...">, <link rel="stylesheet" href="...">, <script src="...">, etc), record the current time. After the page load is done, subtract the time you began, and include that time in the URL of an image you reference off of your server.
Sample javascript implementing this:
-
-
23 Jan 08
-
18 Jan 08
-
17 Jan 08
-
16 Jan 08
-
20 Dec 07
-
07 Dec 07
-
By default, IE allows only two outstanding connections per hostname when talking to HTTP/1.1 servers or eight-ish outstanding connections total. Firefox has similar limits. Using up to four hostnames instead of one will give you more connections. (IP addresses don't matter; the hostnames can all point to the same IP.)
-
-
06 Dec 07
-
03 Dec 07
-
02 Dec 07
Francisco Javier Alcala-SolerAaron Hopkins covers web server tuning, caching and page optimizations to improve performance.
-
23 Nov 07
-
15 Nov 07
-
22 Oct 07
Agripino Petit MiguelHay algunas cosas que suenan un poco raras (cuatro nombres de dominio), pero hay otras que parecen interesantes.
-
14 Oct 07
-
29 Sep 07
-
24 Sep 07
-
22 Aug 07
-
Use Google's Load Time Analyzer extension for Firefox from a realistic net connection to see a graphical timeline of what it is doing during a page load. This shows where Firefox has to wait for one HTTP request to complete before starting the next one and how page load time increases with each object loaded. The Tamper Data extension can offer a similar graph if you make use of its hidden graphing feature.
-
-
14 Aug 07
-
13 Aug 07
-
02 Aug 07
-
31 Jul 07
-
08 Jun 07
-
02 Jun 07
-
Instead of relying on the browser to revalidate its cache, if you change an object, change its URL. One simple way to do this for static objects if you have staged pushes is to have the push process create a new directory named by the build number, and teach your site to always reference objects out of the current build's base URL.
-
Avoid the use of query params in image URLs, etc. At least the Squid cache refuses to cache any URL containing a question mark by default. I've heard rumors that other things won't cache those URLs at all, but I don't have more information.
-
If you have a lot of uncached or uncacheable objects per page and big, domain-wide cookies, consider using a separate domain to host static content, and be sure to never set any cookies in it.
-
-
27 Apr 07
-
23 Apr 07
-
16 Apr 07
-
13 Apr 07
-
10 Apr 07
-
08 Apr 07
-
04 Apr 07
-
23 Mar 07
-
19 Mar 07
-
12 Mar 07
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.