Home Page

Watching the World Wide Web

Watch Out for Bandwidth Hogs



By Jordan Gold

Performance vigilance can be the price you have to pay to have an effective Web site.

In our last column, we discussed the pitfalls of increasing traffic and how it can affect the amount of hardware, software and communications speed that you need on your Web site. Yet some of the popular technologies consume bandwidth greedily and will force you to increase your site's capabilities whether traffic increases or not.

These technologies are those that take advantage of the Web's ability to deliver more than just text online. Because the Web can provide video, sound, graphics and audio, you have to have the horsepower on your site to deliver this information in a timely manner. Using a modem, you can barely handle anything more than text and low-resolution graphics. If your server or communications line can't keep up with the information you're sending, users visiting your site will be driven beyond distraction to frustration and even anger. Don't expect them to visit your site again.
Increased functionality comes in many forms, including Virtual Reality Markup Language (VRML), Java, Shockwave, video, server push animation and real audio. A prime example of heavy bandwidth consumption is CU-SeeMe ("see you/see me"), a realtime video conferencing application from White Pine Software of Nashua, NH, which drains both video and audio from servers and communications lines. A single CU-SeeMe session can bring an entire Internet site to its knees.

Shockwave, an application from Macromedia Corp. of San Francisco, lets users play multimedia applications on the Web and lets developers use the popular Macromedia Director to create those applications. (One of the more interesting Shockwave applications is a "Concentration" game that uses the characters from the animated film Toy Story. It can be found at http://www.disney.com.) Shockwave currently works with Netscape 2.0 under Windows and has Macintosh support (support for other Web browsers is coming soon).

Java, from Sun Microsystems of Mountain View, CA, is a general-purpose programming language optimized for the Web. It lets developers program applications on the Web that can be downloaded to a user's machine in the form of platform-independent applets. In this way, users can perform fairly sophisticated tasks on their computers instead of your server.

All these are exciting technologies that will expand our sense of what it is possible to do online. Right now, however, they can cause a Webmaster plenty of pain.

Is Your Server or Line Taxed?

There are several warning signs that your system is not performing up to speed. The first is that you notice slow performance. This is a bad sign, because performance is likely to be worse outside your network than inside. If customers are accessing your site from around the world, the farther away they are, the more likely they are to experience poor performance.

You can also check for bad performance by using the uptime and top commands on your Unix server, which tell you the load on your system. Uptime measures the current load on your system, during an average of the last five minutes and during the last 10 minutes. Top shows the processes that are currently running and how much load they're putting on the system. Top also shows how much I/O capacity is left and how much memory is left for swap space.

There are also commands that help to measure T-1 capacity. If your T-1 line is often reaching 60 percent or more of capacity, you may need to add another.

If you're lucky, customers will tell you that your server is slow; we've received messages from customers complaining of slow performance. Unfortunately, sometimes they won't. One major Web site experienced a plateau, with traffic remaining constant for nearly a month. After some careful checking, the Webmaster discovered that the system had actually been operating at capacity for that length of time. An upgrade fixed the problem.

How Do You Fix It?

Whether your site is performing slowly due to increased traffic or the increased bandwidth of the applications you're running, there are several measures you can take to improve the situation. If your T-1 line is maxed out, add another one. If your Web server is slow, you can do several things to fix it. Adding memory will help to speed up processes that used to have to wait until the server had enough free memory to handle them. Similarly, increasing disk storage improves system performance. You can also add additional processors to the server or replace the processors in the server with faster ones.

Also, take a good look at the applications you're running on your Web server. Are they efficiently written and fast enough to process requests quickly? Or is your search engine something that was patched together and contains so many lines of code that your programmers can't figure it out? As you add more capabilities in the form of Shockwave, Java and others, pay attention to the traditional areas of your site. For example, are the graphics on your site needlessly large? Are there some files that can be decreased in size so visitors using modems can download them quickly?

Even after you've made your system efficient, which includes having as much capacity and bandwidth as are necessary, there may be circumstances beyond your control. The Internet itself can be a bottleneck. In some cases, when we've investigated customer complaints about slow performance on our server, we've determined that the culprit was a bottleneck on the Internet between their connection and our server. There is nothing you can do about that, except to explain the situation to the customer and apologize. We've learned that the best practice is to fix the things we can and not worry too much about the things we can't.

Jordan Gold is publisher of online services for Macmillan Digital USA, the multimedia arm of Macmillan Publishing, in Indianapolis, IN. He can be reached at jgold@mcp.com. The Web address is http://www.mcp.com.