ASP.NET MVC4 shopping cart application runs under Debian using Mono, Postgres, Apache and mod_mono in VPS server in virtual hosting with 8 GB RAM.
Sometimes application works slowly.
top and free shows that all memory is used but ESX hypervisor shows that actually only free parem of memory is used.
Apache access log file contains http GET requests which may cause this. How to send those get requests to application.
Is there some free tool which and issue list of GET requests to web site automatically to perform stress testing ? List of requests is text file, every get url is in separate like, it is Apache standard log file format.
Can Fiddler so sometihg similar used to read and send requests from file ?
How to profile this system to find reason of slowness ?
To determine how well your software program responds to various levels of usage, you conduct load tests. A load test models the expected usage of a software program by simulating multiple users who access the program at the same time.
Visual Studio Ultimate lets you use an unlimited number of virtual users on a local and remote load test run. The virtual users that are used in load tests use multiprocessor architecture. Multiprocessor architecture allows the machine on which the virtual users are installed to use more than one processor. In a load test, the load pattern properties specify how the simulated user load is adjusted during a load test. Visual Studio Ultimate provides three built-in load patterns: constant, step, and goal-based. You choose the load pattern and adjust the properties to appropriate levels for your load test goals.
Text taken from: Testing Performance and Stress Using Visual Studio Web Performance and Load Tests
Video tutorial: Load testing applications in Visual Studio