Team LiB
Previous Section Next Section

The Test Environment

We do not own all the equipment to build this solution on the hardware we would like, so we decided to use VMware for development. This is actually something we would do for a real-life solution as well. If we configure VMware with the servers we need, we can easily develop the solution and test it so we know it works. When that is done, we take the application and install it in a physical test environment, which should be a replica of the production environment. We then perform all the stress testing and other testing against this environment before real deployment.

Note 

There can be some performance issues with VMware, since all virtual servers run on the same machine. Our recommendation is to always test your solutions on replicas of the production environment.VMware is great for developing the application, but not so great when it comes to performance and performance testing.

If we need to correct something, we can do so in our virtual test lab before updating the physical test environment. To us, this has proven to be a good solution for developing our applications. The only thing to consider is having lots of RAM on the machine VMware is running on. We recommend at least 1GB if all tiers need to be running on the same VMware machine.

Note 

Microsoft has purchased a new product, called Virtual Server, from another company. This is Microsoft's own solution to building virtual servers. It has not been released at the time of this writing, but it seems quite promising in the previews we have seen.

Since some performance issues can arise when running VMware, all tests in this environment should be considered carefully. Hopefully Microsoft will provide a solution that will overcome these considerations, but running several virtual machines always has a penalty when they are running on the same server, so we will see how it works out.

Another benefit with VMware is that we can have the whole application on a laptop, ready to be displayed at any meeting. Great for decision makers to see how the work is going.

For this example, we will only develop our time reporting application on VMware. That is enough for the purposes of this book. We will create three primary virtual servers:

We will also create the following servers so we can test load balancing:

These are not necessary to use for more than testing the code in a cluster. The point of our solution is that we could start with only one server in each tier, and then expand it if necessary.

We will also use two physical domain controllers in our environment. These machines run Windows Server 2003 Standard Edition with Active Directory and DNS.

Next, we will show you how we set up the Web server clusters for our application.


Team LiB
Previous Section Next Section