Here are some tasks that may be helpful for capacity testing needed for your cloud application and a few tips to remember while measuring.
The biggest projects are needing the best capacity test. A new flight Terminal 5 at Heathrow airport in the UK was opened in 2008. It costed £4.3bn, it is the huge sum of money for such project. There was a lot of problems during the first days of its work: 34 flights were canceled for technical glitches and staff screening. This news brought happiness to all the national news channels. They were complaining about everything they could: the misery of passengers, the inadequate capacity of the baggage handling system and so on.
Can we model the required capacity for such the large projects as Heathrow Terminal 5 using the vast resources of cloud computing?
Check of the capacity
This is a normal practice to want to understand the required capacity before running the application. It is useful to carry out such three tasks during capacity test.
- Register all the available resources and figure out loads that system can carry .
- Perform an artificial load. Client usage may be imitated to see how an average day will be spent, to see the system’s behavior till it breaks.
- System monitoring. Using the pretend-customers to measure the increase in application load.
There are similar tools for checking the capacity and for many operational tasks, such as ongoing capacity management, stress software testing and performance monitoring. Special test environment with unique open source tools is creating by some companies such as Jmeter, multi-mechanize and Selenium. Another way is to rent cloud testing providers services (Cloudsleuth, Soasta and Loadstorm). The venerable sysadmin command line tools of top, lshw, df, tcpdump, ab are used sometimes.
The whole technology stack verification
There are few layers in structure of any application.
- There is a tailored business application on top and off-the-shelf applications supporting.
- The cloud provider’s network and hardware form the bedrock.
- The cloud provider’s hypervisor and OS are performing on the physical machine.
- The OS and virtual machine support the applications.
The main layers of the cloud provider’s: the network, hypervisor and hardware cannot be measured by the customer and are hidden. There are a lot of links in cloud infrastructure: PDUs, fibre, switches, routers, proxies, load balancers, etc.
CPU and memory are included in the technology stack of virtual machine layer. These can be measured by OS, and the measurements by the OS are available to system monitoring tools. It is also available for the applications of top layer.