Convesio’s hosting infrastructure is fully compatible with any WordPress or WooCommerce site and our onboarding process makes migrations fast and hassle-free. Our platform is built to run sites of any size, with optimum performance and scaling capabilities. However, for selected websites and special use-cases, such as before a big live event or sales — our engineers run a series of load tests to assess the site’s performance. These load tests reveal the true requirements of your site and help us prepare appropriate resources for optimum performance.
Our load tests helped businesses prepare for upcoming events and maximize their ROI. This article is intended to cover various load tests and how the information from their results can help you prepare your site.
Why Does Your Site Need Load Testing?
Load testing is a way to make sure you are ready for a surge in traffic, like when your site gets linked to on social media or is covered by a major news outlet. There are several ways you can perform load testing on your WordPress site. This includes using manual tools and services like JMeter, Loadimpact, and Apache Benchmark. However, this requires some technical skills and knowledge for interpreting the report.
A lot of people think that load testing is only necessary for e large websites or businesses, but that’s not true. Load testing provides important insight into how your site will perform under different conditions and can help you make decisions about optimizing your site’s performance.
For example, if you are launching a new site and want to test whether or not it can handle 2 million visitors per day (such as during the Black Friday sale), then you might want to do some load testing before rolling it out publicly. This way, you won’t be caught off guard by any problems when you are ready to launch!
At Convesio, our ScaleOps team performs load testing with the intention of finding any loose ends that might cause problems during a scaling event. We also estimate the resources required to handle high volumes of traffic without any hiccups. The result of this exercise can be applied to fixing what needs to be fixed on the site and keeping enough resources on standby to power the event.
Download Our Sample Load Testing Report
How Convesio Load Tests Your Site
Now let’s see what kinds of tests we run at Convesio and what you can expect from the result of a testing report.
The Goal of Load Testing
The main reason why our ScaleOps team performs load testing on your site is to ensure the availability of your site, and to maintain consistent performance, no matter the number of visitors. Keeping the site live and preventing servers from crashing under extreme load is only one part of the solution. The other part is to scale its resources to maintain faster loading times and enhance the user experience.
Types of Website Load Tests
Every site has its own requirements, thus, conducting a generic website load test is not the most effective method. It is important to define the key metrics that you intend to discover about your site, and based on that, select an appropriate load test.
Here are some of the example tests and metrics for popular website types. This is by no means an exhaustive list and can be extended if required.
Ecommerce Sites: Orders Per Second
One of the major bottlenecks for eCommerce sites is order processing. In the event of large sales, hundreds of customers could be placing orders online at the same time, which puts a heavy strain on your server. This engages the database, backend APIs, and even external resources for reading and writing the information. This all slows down the online store, which can lead to more abandoned carts and an increased bounce rate.
In order to assess the capabilities of your eCommerce store in handling large orders, our ScaleOps team runs a load test that simulates hundreds of concurrent customers placing orders at the same time. This load test allows us to identify underlying issues within the store’s structure such as an un-optimized theme, low performant buggy plugin, as well as room for improvement in the infrastructure to handle this large number of orders.
The test script defines various parameters such as number of users, number of products in the basket, number of pages visited, etc, and the behavior we expect the fictitious customers to follow. The idea is to slowly increase the number of users while monitoring the performance in terms of loading times, CPU, and RAM utilization.
As the number of users increases, the response time to handle a request increases. The aim of the test is to try to touch the maximum number of transactions before a defined threshold is crossed.
The above chart is taken from a load test report that our team performed on one of our customers’ WooCommerce sites. It shows the comparison between the average and median response time on each time stamp, while the green lines show the number of users.
What to expect from the results?
The result from the above test is useful in highlighting the current capacity of an eCommerce site, beyond which either the store starts to load slowly or even throws 504 errors to the customer. At this point, checking the logs is also useful, as it can identify any issues or errors in the database or PHP code that might create unnecessary delays in completing a transaction.
Membership Sites: Logins Per Minute
Just like eCommerce sites, membership sites also require load testing. Besides page speed and average response time, membership sites should also be tested for login per minute. This is an important metric for membership sites where hundreds or even thousands of users could log in at a single time.
Anticipating a close number of users for the test could be challenging, therefore, it is always a good idea to start with a smaller number of users and slowly increase them over time. The key here is to record a maximum number of login attempts made in a minute and then the percentage of the successful ones.
What to expect from the results?
Ideally, every login attempt made in a minute should be successful unless you set a very high number of users with respect to your existing website and server resources. The above test allows our engineering team to identify all the blockers that could cause failed login attempts and allocate sufficient resources to power the membership site so that every user that tries to log in can access the site.
Live Events: Login Per Minutes, Chat & Video Streaming
Websites hosting live events are prone to scaling issues the most. Hosting live events online does not only require a powerful server but also efficient resource management. Data such as live video streaming, chat conversations, and logins flow in real-time. Metrics that are important for load testing a live event site are logins per minute, chat performance, and live video streaming. These are also the key components and run in real-time, which means the margin of error is very narrow.
Similar to membership sites, the login per minute test helps us to identify the capacity of the site of admitting x number of users per minute. You can not afford to lose a customer who has already bought the tickets but can not get in because the server is too busy.
The second test is to assess the performance of live chat conversations. It is quite possible that thousands or even millions of users are logged in and commenting in a live chat. Although chat works on sockets that are scalable, you certainly want to check for any issues or problems that can spoil the experience of your attendees.
Finally, load test the live video streaming feature. Here, you are allowed to be as creative as you wish, but I would like to mention some important metrics that can really help you assess the performance of your infrastructure as well as the UX capabilities of your site.
- Average load time of the video from multiple locations.
- Bitrate represents the quality of the streaming video.
- You can also watch out for any HTTP-related errors.
Additionally, the UX-related metrics that you can consider are:
- Start time or buffer time.
- Lag time is just a difference between the actual live feed and what a user sees.
- In some cases, time to download all artifacts and media assets.
What to expect from the results?
The results from the above tests will show you the true performance of your live event site and what you need to do to fix issues for keeping a consistently good user experience. If the results show that your site becomes slow after a certain number of users begin logging in or when the buffer time exceeds a certain threshold then you need to expand your server resources or maybe sign up for a high-performing edge network.