Wednesday, January 30, 2008

HTTP Playback Request Timeouts

HTTP Playback Request Timeouts

During script playback it is possible that your HTTP requests can time out and produce messages in the Error Log. These can be "Error 10060:" or possibly other messages. There are a few reasons this can be occurring: some of which are a sign of problems with your system under test and some problems with your the generating mechanism - ie. OpenSTA. Whichever it is, it generally means you are running out of resources somewhere.

The OpenSTA default playback timeout value is 60000 ms (1 minute) - and you may have valid reasons to increase this. This parameter can be tuned in the TestExecuter_web.ini file located in the OpenSTA/Engines directory (and also in OpenSTA/Engines/Web/Modeler for the ScriptModeler replay). Adding a line to the [SOCKET] section of the .ini file like this:


Would increase the timeout to 6 minutes.

OlafKock suggests another solution for this problem: change your serverside application:
"I don't believe that long running http requests are very user friendly. The risk that the user - knowingly or not - terminates the request, closes the browser etc. is somewhat high. If there is a lot of background processing involved, it might be better to have the application display a queue and a job state, e.g. "waiting for resources", "executing, come back soon" or "done, click here for results".

This has - of course - nothing to do with OpenSTA, but I believe it presents a nicer experience for the user. Your mileage may vary."

In earlier versions of OpenSTA (1.3.2 and prior), there was a parameter in the recorded SCL called REQUEST_TIMEOUT- apparently it was useless!

More tips on PlaybackTuning

Playback Tuning

This page is intended to help you get the most from your OpenSTA hardware/software configuration when it comes to replaying large numbers of VU's.

Replaying large numbers of users from a single machine will inevitably lead to you running out of system resources. For any test to run efficiently and sensible results to be generated the load generating machines need to be running well within their resource boundaries. The hardware resources (memory, IO subsystem, CPU) can be upgraded and/or efficiency of SCL scripts improved. Operating System and other software limits are often configurable and it is these that we shall try to list here:

* Increasing the number of TCP sockets available is covered in PlaybackAddressInUse
* Increasing the length of the timeout on HTTP connection is covered in PlaybackRequestTimeout

The OpenSTA ini parameters are documented in a User Guide Appendix.

No comments: