Testing Your Website in a Realistic Environment
Introduction
My article "Why Is My Website So Slow for Global Visitors?" described the unexpected issues that can arise when a website that was thoroughly tested in high-speed LAN environment gets exposed to global visitors faced with long delays and slow Internet connections. I've listed a number of solutions in the article "Fix Your Website's Performance Problems," but if you're a responsible developer, you'll still have a healthy dose of skepticism even when you've implemented most of those solutions. It's time to test the website in a realistic environment. I doubt that your boss will approve a short trip around the globe as part of the quality assurance process, so you'll have to find another way.
Software and hardware developers constantly face the same problem. For example, if you're developing a new database server, you might want to test how it performs over a slow-speed long-delay satellite link. The IT industry and open-source community have responded to these needs with a variety of WAN emulation tools, some of them packaged into appliances (for example, the PacketStorm product range), others available free of charge.>
The most commonly mentioned open-source WAN emulator is the Network Emulation Tool (Net) from the National Institute of Standards and Technology (NIST). Unfortunately, this tool was developed years ago and tightly integrated with early versions of the Linux kernel. Making it run on recent Linux releases is thus a major pain that's best avoided.
Another packaged open-source tool is the WAN emulator (WANem) from Tata Consultancy Services. It's distributed as an ISO image of a standalone CD that you can boot in any recent PC. The CD contains the Knoppix operating system (Linux running from CD), and the Apache web server in WAN emulator, allowing you to configure the software from any web browser.