Performance testing highlights areas which aren’t performing or areas which may fail to perform when put under increased load, but on its own doesn’t always identify the root cause of the issues, this is where experienced consultants add value to a project by drawing on their experience to help pinpoint the exact cause or bottleneck. There are some issues which we see time and time again with some of the most common being:
Pages which load data from a back-end database. There are numerous issues which can arise when loading data from a database, ranging from inefficient or unnecessary table locking, caching issues, long running and badly formed queries and lack of or badly used indexing. Luckily these are usually easily solved or identified.
Pages which haven’t optimised images and other page assets. The number of images and assets on a page can have a significant impact on the response times. A high number of images can mean more HTTP requests with each requiring a round trip to the server. On the other hand if images are compressed properly the page size can be an issue.
Code not optimised for concurrent requests. Custom code is often developed in isolation and with little or no testing of concurrent calls. These issues are often missed by functional testing and will only become apparent when load testing starts. Badly implemented thread safety can cause functions to lock or error. These issues are easily solved by implementing early performance testing rather than leaving testing to the end of the development lifecycle.
Virtualised environment configuration. Virtualisation has many benefits but these benefits can also increase the complexity of identifying some performance issues. The dynamic reallocation of resources can either hide possible issues or even cause issues with resource contention across VMs. These can usually be solved by collecting the right metrics and identifying the root cause.
- Environment configuration. One of the benefits of testing on live or production environments prior to go live is that performance testing can help validate solution designs and configurations. Frequent problems include load balancing setup and firewall configurations. Even when testing in production environments is not possible a good pre-production environment that is representative of live can be invaluable in validating configuration changes.
StarBase is your first defence against software performance problems. We offer a full performance test of your software utilising a dedicated team of consultants to identify potential problems and ultimately help you to be launch-ready. We utilise our understanding of client objectives, skilled project management and close analysis to deliver outcomes that you can rely on.
If you'd like to find out more please contact us