September 27, 2001

The Need For Speed How

The Need For Speed

How fast is your Internet service? Is your web site the equivalent of a 1985 Chevy Chevette or are you running over your competition on the Info-highway with a 2001 Ferrari 360 Modena? This isn't one of those penis-envy ego questions. Mom always told you not to speed, but you shouldn't listen.

The speed of your service directly affects its usage. We quickly discovered this with ONElist. When the web site was slow, people used it less, resulting in fewer page views. When it was fast, we saw an increase in usage. Going from a slow period to a fast period, by increasing the number of web servers, we consistently saw usage increases upwards of 30%. Now you're saying, "well Mark, you nimrod, that's obvious." But it wasn't to us. You'd expect this with search sites, like Yahoo, where people go to surf. But people used the ONElist web site mainly to administer their groups; we thought that web site usage was very task oriented. Once they finished their task, they'd leave. The speed of the service wouldn't affect the number of pages they viewed, just the time it took to complete their task. But we were wrong.

As important as usage, another thing we quickly learned was that a slow site leads to an exponential increase in load on the service. Let me repeat. A slow web site will increase the load on your database and other back end systems exponentially. This is because people are impatient. If Joe Surfer has to wait more than a few seconds for a web page to load, he generally hits the Stop button in his browser and tries to load the page again. Don't tell me you haven't done this, because you'd be lying like your dog. When Joe Surfer hits the Stop button, the browser cuts the connection to the web site. But the web server might be in the middle of talking to the database or doing some other processing. The point is that the web server will still complete the operations needed to create the (now unwanted) web page. If Joe Surfer then tries to reload the page after hitting Stop, he's submitting an entirely new request to the web server, so the server has to again go through all the operations that took so long in the first place. Because of Joe's actions, it now takes twice as many resources to serve his web page. But Joe's not the only one doing this. There's a correlation between how slow a web site is, and how many people do the Stop/Reload action. Call it the Impatient Function. The slower the site, the more people do this, which increases the load on the web site, which generally slows it down even more. It's a death spiral.

So the moral of this little tale is that you can't be cheap with your web servers. Actually, this doesn't apply only to web sites; we saw increased email usage when email delivery was fast. So, just like fast cars will get you all the chicks, fast Internet services will get you all the users. I'm just crossing my fingers that my girlfriend never realizes I don't have a fast car.

Posted by markf at September 27, 2001 09:45 PM