Automated client-based web server stress tool simulating simultaneous multiple user server accesses
First Claim
1. A method for stressing a web server and an Internet web application executing thereon by testing a plurality of transaction associated with said application, comprising:
- executing multiple threads, each comprised of a virtual browser;
requesting data from said application through said threads;
posting data from said application through said threads; and
logging the result of said requesting and posting of said data;
setting a wait option to create a semaphore;
delaying said executing of said threads in response to said setting said wait option until all of said threads are created;
executing, in response to said delaying, all of said threads simultaneously after creation of the last of said threads; and
disabling said wait option to cause said executing of said multiple threads simultaneously;
wherein said data is removed from storage during said executing of said multiple threads;
establishing an input file including designation of said transactions to test;
wherein said executing multiple threads is in response to said input file;
wherein said logging includes logging the time of execution of each said transaction; and
wherein said result includes an indication of whether a requested page is found and returned corresponding to said transaction; and
setting a sleep option value to lower the rate of said requesting in an amount sufficient to simulate actual users of said application.
1 Assignment
0 Petitions
Accused Products
Abstract
A computerized subsystem starts multiple user-defined threads, each of which is a virtual browser for a web site server application under test and executing on a web server. Each individual virtual browser requests and posts data to the server and corresponding server application under test at a rapid rate. Actual returned data is not saved but time of transaction and whether page is found and returned is logged. The server and port to test are user-specified in an input data file or can alternatively, by command line option. A repeat option causes the subsystem to loop through the input file a specified number of times, hours, and an indefinite repeat. User-specified sleep values slow down requests to simulate actual users. A wait option creates a semaphore causing all threads to wait for the semaphore which appear only after all threads are created, whereupon such threads begin execution simultaneously to maximize stress on the server and application. The wait option may be user-disabled whereby threads begin execution as soon as created for a staggered stressing of the web site and application. The input data file has a common format shared both by the web server stress tool and a web server application verification tool, multiple instances of which comprise the web stress tool.
-
Citations
6 Claims
-
1. A method for stressing a web server and an Internet web application executing thereon by testing a plurality of transaction associated with said application, comprising:
-
executing multiple threads, each comprised of a virtual browser; requesting data from said application through said threads; posting data from said application through said threads; and logging the result of said requesting and posting of said data; setting a wait option to create a semaphore; delaying said executing of said threads in response to said setting said wait option until all of said threads are created; executing, in response to said delaying, all of said threads simultaneously after creation of the last of said threads; and disabling said wait option to cause said executing of said multiple threads simultaneously; wherein said data is removed from storage during said executing of said multiple threads; establishing an input file including designation of said transactions to test; wherein said executing multiple threads is in response to said input file; wherein said logging includes logging the time of execution of each said transaction; and
wherein said result includes an indication of whether a requested page is found and returned corresponding to said transaction; andsetting a sleep option value to lower the rate of said requesting in an amount sufficient to simulate actual users of said application. - View Dependent Claims (2, 3)
-
-
4. An apparatus for stressing a web server and Internet web application executing thereon by testing a plurality of transaction associated with said application, comprising:
-
means for executing multiple threads, each comprised of a virtual browser; means for requesting data from said application through said threads; means for posting data from said application through said threads; and means for logging the result of said requesting and posting of said data; means for setting a wait option to create a semaphore; means for delaying said executing of said threads in response to said setting said wait option until all of said threads are created; means for executing, in response to said delaying, all of said threads simultaneously after creation of the last of said threads; means for disabling said wait option to cause said executing of said multiple threads simultaneously; wherein said data is removed from storage during said executing of said multiple threads; means for establishing an input file including designation of said transactions to test; wherein said means for executing multiple threads is responsive to said input file; wherein said means for logging includes means for logging the time of execution of each said transaction; and
wherein said result includes an indication of whether a requested page is found and returned corresponding to said transaction; andmeans for setting a sleep option value to lower the rate of said requesting in an amount sufficient to simulate actual users of said application. - View Dependent Claims (5, 6)
-
Specification