Quantcast
Channel: ArcaneTek from LowTek
Viewing all articles
Browse latest Browse all 24

Test your Web Server Performance with WCAT

$
0
0

This is a quick tutorial on how to use WCAT to benchmark a web server. First, get the IIS 6.0 Resource Kit which includes the WCAT Client and Controller. Then, on your client machines that will help simulate load, do the following:

  1. Install the Resource Kit you just downloaded (you don't need to install it on your web server).
  2. Run "%ProgramFiles%\IIS Resources\WCAT Client\client.reg" to tweak some TCP/IP registry settings that will enable the client machines to make a lot of connections per second, etc. Again, you don't need to do this on the web server itself.
  3. Pick one of the client machines to be the "controller" and run the following on each machine (including the controller itself):

    cd /d "%ProgramFiles%\IIS Resources\WCAT Client"
    clientloop.cmd <hostname or IP of controller machine>

On the controller machine, create a script.ubr file with the following contents:

[Configuration]
WarmupTime             5s
# Set this to the total number of client machines
NumClientMachines   2
MaxRecvBuffer          64K
CooldownTime           5s
ThinkTime                  0
# Set this to how many clients each actual machine should simulate
NumClientThreads     10
Duration                    30s
Comment                   script.ubr script
CloseMethod              RESET
ConnectEx                 TRUE
AsynchronousWait     TRUE

[Script]
# Try benchmarks with this TRUE or FALSE
SET KeepAlive = FALSE
SET Port = 80

NEW TRANSACTION
    classId = 1
    Weight = 100
    NEW REQUEST HTTP
# Set this to the file to request from the server
    URL = "/"

To run the benchmark, run the following on the controller machine:

  • "%ProgramFiles%\IIS Resources\WCAT Controller\wcctl.exe" -a <web server hostname or IP address> -z <path to script.ubr>

During the test, information will be output from wcctl.exe and also on the client machines. When the test is complete, a summary will be written to "%ProgramFiles%\IIS Resources\WCAT Controller\wcctl.exe.log.log" on the controller machine.

Tips:

  • To benchmark static file requests, but not using kernel caching, try accessing a directory URL like "/subdir/" instead of "/subdir/default.htm". Accessing "/subdir/" does not use kernel caching, but accessing "/subdir/default.htm" does use kernel caching. More info.
  • When benchmarking ASP.NET, try with and without Page Output Caching. When benchmarking Page Output Caching, try changing the VaryByParam value.

Viewing all articles
Browse latest Browse all 24

Trending Articles