The Santa Slam

The holiday rush is coming, and as usual, many sites won’t be able to handle the traffic. Here’s how you can prepare for this year, and beyond.

It happens every December. The holiday season brings with it hordes of online shoppers, and — despite having months to prepare — many websites aren’t able to keep up. Homepages are slow to load, images are missing, strange error messages pop up during checkout, and sites fail to respond entirely. The not-so-jolly result: lost sales.

Keynote Systems has measured the performance of top retail websites during the holiday period for the past several years. According to its studies, the average time required to complete a purchase gets longer and longer from Thanksgiving through December. The slowest sites can take as long as 13 seconds or more to complete a transaction (note that this is the average amount of time spent, on a fast connection, waiting for the site’s servers to respond). If your site is slow in August, chances are the increased traffic at the end of the year will overwhelm your servers and make it even slower.

It doesn’t have to be this way. After all, the holidays really shouldn’t surprise anyone. But preparing for holiday traffic (or other predictable surges in the amount of visitors to your site, such as the thousands of baseball fans who overwhelmed and this week in search of World Series tickets) is about 50 percent computer science and 50 percent seat-of-the-pants management.

Mike Gilpin, research manager at Giga Information Group, says that the usual advice for website capacity planning is to look at the biggest peak in traffic your site has experienced so far and then build enough server and network capacity to handle five times that number of visitors. That would probably be a luxury for most IT departments, however (good luck convincing the bean counters that you need to buy five times as many servers as you’ve ever needed in the past). “Obviously that’s very expensive, and not everybody can do that,” Gilpin acknowledges.

A more realistic solution, if you’re concerned about how your site will hold up during the coming holiday season, is to rent extra capacity. Internet service providers can provision you with more T-1 lines, if necessary, or you could pay a Web-hosting service to supply you with extra servers. It’s temporary, but it can get you through the next few months.

A more long-term solution — admittedly, one you aren’t likely to get to before December — is to go through your site, page by page, application by application, and make sure it’s put together as efficiently as possible. Most commercial websites are on their third or fourth versions, so the quick-fix problems have probably been rectified already. Now, says Willy Chiu, vice president of IBM’s high-volume website team in San Jose, the biggest problem is coordinating the various technology and business teams. Websites have become increasingly complex, with multiple tiers of infrastructure: Web servers (to deliver HTML and graphics to customers’ Web browsers), application servers (to assemble webpages from various elements), databases, the data center’s network, and a connection to the Internet via an ISP. (See Business 2.0’s “E-Business Parts List” for a more detailed explanation.) Web performance problems could happen anywhere along this chain, especially if the various parts aren’t coordinated.

To help keep that from happening, IBM’s high-volume website team and Giga have a few recommendations:

1. First, when designing webpages, make sure they’re not so complex and eye-catching that they take forever to load. You need a budget for every page, spelling out the business value of each element (buttons, graphics, scripts, and the like), and you need to be sure that they’re not only necessary but worth the time they take to load in a customer’s browser.

2. A good rule of thumb is that you should try to keep each page under 64 kilobytes, with no more than 20 different items. Total time to download a page should be less than 20 seconds, or less than 8 seconds on a fast connection. (Business 2.0’s homepage, for the record, totals 110KB with a whopping 60 items, but it loads in about 7 seconds on a fast connection — not bad, though there’s room for improvement.)

3. Next, test your website in the environment where it’s going to be used. If the majority of your site’s visitors are running Internet Explorer 5 on Windows 98 systems and have dialup connections to the Internet, that’s what you should use to test the site. Too often, sites are evaluated using the latest and greatest hardware, plugged into a company’s lightning-quick Internet connection, which makes them seem faster than they will appear to customers.

4. Use caching or content-delivery networks to improve the speed at which images are downloaded. Such systems, made by the likes of Akamai, distribute copies of frequently used elements, such as graphics, to fast servers that are close to the end users, so they can be loaded faster. You can also boost your site’s performance by reusing images (logos, for example) throughout the site, so that the customers’ Web browsers can access the same files from the browser cache without having to load them every single time.

5. Build your infrastructure with growth in mind. For example, consider using servers with new “blade” architectures, which let you expand storage or processing capacity by plugging in special cards known as blades. You need new, blade-capable hardware for this to work (Hewlett-Packard, Compaq, and Dell have led this market so far), but the advantage is that you can add power to your servers without taking up additional space in the data center.

6. Finally, realize that even if your site is running like a well-tuned dragster, external services, such as credit card processors, fulfillment services, application service providers, and ISPs, can still slow you down. And a frustrated customer doesn’t care that it’s not your fault — those services are transparent, so you’ll take the blame. To prevent this, you need to do due diligence on all your service providers, making sure they can rapidly process each online transaction. If necessary, sign contracts with two or more such providers so you have a backup in case one is slow or goes offline entirely.

Traffic surges — most of them, anyway — are predictable. And with a little careful planning, you can be ready when the next one comes.

Link: The Santa Slam

Link broken? Try the Wayback Machine.

The Santa Slam