What kind of web hosting plan we need exactly? It's hard to tell without understanding the actual usage on the site. In order to get the genral stats, we can create numorous requests to the website and monitor how much resource it's using. How to test? Here we're going to introduce the top 10 website stress testing tools which will simplify the process.
Grinder – Grinder is a JavaTM load testing framework that makes it easy to run a distributed test using many load injector machines. The Grinder has special support for HTTP that automatically handles cookie and connection management for test contexts. Users can write their own plug-ins to a documented interface.
Pylot – Pylot is a free open source tool for testing performance and scalability of web services. It runs HTTP load tests, which are useful for capacity planning, benchmarking, analysis, and system tuning.
Pylot generates concurrent load (HTTP Requests), verifies server responses, and produces reports with metrics. Tests suites are executed and monitored from a GUI or shell/console.
Web Capacity Analysis Tool (WCAT) – Web Capacity Analysis Tool (WCAT) is a lightweight HTTP load generation tool primarily designed to measure the performance of a web server within a controlled environment. WCAT can simulate thousands of concurrent users making requests to a single web site or multiple web sites. The WCAT engine uses a simple script to define the set of HTTP requests to be played back to the web server. Extensibility is provided through plug-in DLLs and a standard, simple API.
fwptt – fwptt it's a Web application tester program for load testing web applications. It can record normal and ajax requests. I tested it on applications, but it should work with jsp, php or other.
JCrawler – JCrawler is an open-source (under the CPL) Stress-Testing Tool for web-applications. It comes with the crawling/exploratory feature. You can give JCrawler a set of starting URLs and it will begin crawling from that point onwards, going through any URLs it can find on its way and generating load on the web application. The load parameters (hits/sec) are configurable.
Apache JMeter – The Apache JMeter™ desktop application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions.
Siege – Siege is an http load testing and benchmarking utility. It was designed to let web developers measure their code under duress, to see how it will stand up to load on the internet. Siege supports basic authentication, cookies, HTTP and HTTPS protocols. It lets its user hit a web server with a configurable number of simulated web browsers. Those browsers place the server "under siege."
http_load – http_load runs multiple http fetches in parallel, to test the throughput of a web server. However unlike most such test clients, it runs in a single process, so it doesn't bog down the client machine. It can be configured to do https fetches as well.
Web Polygraph – Web Polygraph is a freely available performance testing tool for caching proxies, origin server accelerators, L4/7 switches, content filters, and other Web intermediaries. It's a standard web stress testing tool for many companies including Microsoft.
OpenSTA – OpenSTA is a distributed software testing architecture designed around CORBA, it was originally developed to be commercial software by CYRANO. The current toolset has the capability of performing scripted HTTP and HTTPS heavy load tests with performance measurements from Win32 platforms.
If you have other good tools, feel free to post the names and share with us. Regards