Load and Stress Testing: Retaining Users, Helping Script Functionality, and Preventing DDoS
The idea behind stress tests is to see how websites behave when introduced to an extreme amount of user. The basic idea is how many users does it take for a website to break, and how is speed affected up to that point. There are a few times when stress testing is not needed for a website. For example, you do not need to stress test, if the website is being hosted for use by a small group (25 people or less) with benevolent intention. Stress testing serves to highlight issues with exaggerated scalability and security. Stress testing becomes a necessity when you are considering dealing with an increase in multiple benevolent users and/or the potential of a malevolent user attempting a DDoS attack. At worse, a poorly optimized site could completely shut down.
Load tests, on the other hand, examine how websites behave under a reasonable amount of users. These tests can help locate which parts of the script scale poorly and as a result are causing a backup. The idea behind load testing is to understand the limitations of your website before you launch so you can limit noticeable delay in functionality for users. In recent years this has become more important. If users have good reception and wait more than a few seconds for your website, they will assume that your site is down. There are many different programs designed for performing a load test. Apache JMeter is probably the one of most well-known load testing tool. It is a java application designed to test a variety of connections: FTP, HTTP, and several other protocols. There are also a variety of large scale load testing tools available online like LoadView and those offered by Neustar.
As a result of the differences in goals for each of the tests, the tests are performed quite differently. Load test programs gradually increase the number of users to get a proper stress vs strain understanding of the web page. Stress tests attempt to quickly change the workload, to emulate rare occurrences on the site. If you are thinking of deploying a site, try both tests. Fully understand your website's limits and optimize your scripts to provide a lag free experience