Previous Topic: Browser Bandwidth Simulation CompanionNext Topic: Configure DevTest to Use a Web Proxy Companion


HTTP Connection Pool Companion

The HTTP Connection Pool companion enables you to limit the number of HTTP connections for each target server. This companion applies only to the HTTP/HTML Request, REST, and Raw SOAP Request test steps.

DevTest typically uses one HTTP connection for each virtual user. For example, if you run a test with 100 virtual users, then the client and the server each have 100 sockets open.

If you run a load test with thousands of virtual users for each simulator, the underlying operating system can run out of available sockets. In this scenario, use the HTTP Connection Pool companion.

The ConnectionsPerTargetHost parameter specifies the number of connections to allocate to each unique endpoint.

Assume that a test case has two steps: an HTTP step to go to web server 1, and a second HTTP step to go to web server 2. The test case has the HTTP Connection Pool companion with a setting of five connections for each target host. The staging document is configured to run 100 virtual users. Because there are two simulator servers, they get 50 virtual users each by default.

Simulator 1 creates five connections to web server 1, and five connections to web server 2. Simulator 2 does the same thing. Each web server now has 10 client connections. At the first HTTP step, a virtual user must wait for one of the five connections to web server 1 to become available. The virtual user uses the connection to make the HTTP call, and the connection goes back into the pool.

The following graphic illustrates this scenario. Simulator 1 has five connections to web server 1 and five connections to web server 2. Simulator 2 has five connections to web server 1 and five connections to web server 2.

Concept diagram of an HTTP connection pool