This article will explain the risks associated with using a scaled (aka downsized) environment for Performance Testing. I’ve been a little off topic lately and I thought I would jump back into the realms of Performance Testing. I thought I would attempt to answer one of the most complicated questions I’m faced with when Load Testing. The question is this “If we half the size of the performance/load testing environment can’t we just multiple the figures up?” This is a straightforward question and the answer is simple – ‘NO’. But justifying the answer and explaining in simple terms is more difficult. Particularly to PM’s and people not directly attached to the technology. So I’m going to attempt to answer in simple terms why scaled load testing environments tend not to work and highlight the risks to be considered when using them. Point people at this article if you struggle to answer this question – and let me know what they think.
First lets take an object: A square – if we half the square, do we get half the size? Well yes and no – the square is half the size, but its capacity is 1/4 of the original square.
This is a very simplistic view – but it illustrates if the environment is ‘halved’ the capacity will not. I’m setting the scene so please bear with me …..
As we begin another week of summer, here are a few helpful links for articles concerning issues of interest to us load and performance testers. We at LoadStorm have been busy the past month with many new customers asking us for help.
The wealth of information on scaling is profound. Although, there was one lesson that I found to be the most interesting. This is that every web application is different. This is not to say that we cannot learn from others that have come before us, but we need to understand that every application has a wide variety of demanding requirements. This may include a special read/write mixture of database operations or an inability to effectively cache content. Because of these differences, developers must be extremely perceptive of their system. This means constant monitoring of the site’s trends.
The PushToTest TestMaker suite is a powerful tool for the testing of web services and applications. Paired with a highly flexible and comprehensive Jython implementation, TestMaker gives the developer all the tools they need to thoroughly test an application. Web applications are becoming increasingly sophisticated, and flexibility is needed to truly provide an accurate testing environment.
Table design is one of those little idiosyncrasies that developers rarely follow, but the best table design can create the best scalability and performance value for a company application rather than worry about it when problems arise.
When Microsoft came out with their new platform of .NET architecture, they realized that scalability was a major factor for business organizations looking for strong, performance based applications that could handle a large amount of user interface. .NET scalability has several factors although the Microsoft framework technology has created plenty of advances that improve performance in any application whether it is web forms or window’s forms.
If your web server is starting to lose performance and resources are lacking, it may be time to implement a web farm. A web farm will pool sources and allow your web server to share its resources with another high powered machine. It can greatly increase web form performance and rid some of the end user frustration of timeouts and slow responses.
Microsoft SQL Server 2000 and Microsoft SQL Server 2005 do not inherently support load balancing out of the box like most information technology experts might think. They have intrinsic tools that allow for scalability and load balancing, however, they do not have the defined load balancing functions that are commonly known among network administrators. Instead, Microsoft SQL Server 2005 comes with some tools to help with scalability and performance for your enterprise organization.
Microsoft Clustering Services (MSCS)