Case Study
Kara Bullock Art School
Key Takeaways
- Recurring Site Crashes During Sales Events: Kara Bullock Art School faced significant issues with their website crashing during annual single-day sales events due to high traffic, leading to a poor customer experience and lost sales.
- Load Testing with Convesio to Find Issues and Optimize the Site: PixelJar, the agency partner of Kara Bullock Art School, worked with Convesio, a scalable hosting provider, to address these issues. They conducted load tests that helped optimize the site's performance, isolating problems to specific plugins and reducing CPU resource usage significantly.
- Successful Implementation with Zero Issues: During the actual sales event after migrating to Convesio, the site experienced zero performance issues, no crashes, and all orders were processed smoothly, marking a significant improvement from previous years.
About
Kara Bullock Art School offers classes, resources, and community to support and inspire artists and art business owners. Their courses include everything from portrait painting to digital art. They also host a podcast, offer business support, in-studio classes, and more.
PixelJar is a custom website development firm located in Orange County, California, and the agency partner of Kara Bullock Art School. Since 2004, they have been offering web development, support, consulting, and similar services to a variety of clients. They specialize in WordPress development including custom theme development, custom plugin development, and 3rd party API integrations.
CHALLENGE
Crashes During a Critical Sales Event
Every year, Kara Bullock Art School runs a single day sale that generates a large amount of new customers. To sell and operate these courses, they utilize WooCommerce and MemberPress.
During this sale, they have over 1,000 memberships to sell in a short period of time. The problem? Their previous host wasn’t able to handle the sales event. For the last two years, their site has crashed in the first few minutes of the sale. And since the site crashed, they had no real data on what to expect in upcoming years.
Email and viral social posts would cause the site to be overwhelmed very quickly – and they spent hours firefighting the outage. As you can imagine, this created a stressful experience for the potential customers and a bad experience for her business.
To make matters worse, users who did successfully purchase were not able to access their courses, as the site was down.
Solution
PixelJar Meets Convesio at WordCamp US
PixelJar has long been working with Kara’s website. Unfortunately, their hosting provider was unable to handle the amount of traffic without an enormous cost in resource costs. That’s where Convesio came in…
At a WordCamp event, PixelJar met the Convesio team and learned about our unique scalable hosting technology, which can handle thousands of simultaneous users visiting a site at once. Exciting by the prospect of solving this scaling issue, PixelJar started investigating Convesio’s offering.
Preparing to Load Test
After we all returned from WordCamp, PixelJar and Convesio worked together to migrate a copy of Kara’s site to the Convesio platform. We analyzed all the historical analytics and sale data from WooCommerce to determine how much traffic her site received during the peak time. This was only partial data, as the site went down, but did allow us to get some idea where we would land – and what to test against.
We then set up a copy of her site on the Convesio platform and planned our load tests. We knew we wanted to test how many concurrent orders we would push through WooCommerce at once and measure that against the total orders she expected.
We also knew, as a constant, that she had 1,000 memberships to sell. Finally, we wanted to determine how much compute capacity she would need as they would help us present accurate pricing for the event.
Load Testing Results
We ran a load test for 10 minutes, during which 1,397 orders were successfully placed. We got to 2 orders per second and used 60 CPU cores to achieve these results. The request time exceeded 6 seconds on average.
This was not ideal, as it was slower than we liked – and was using a abnormally large amount of CPU resources for this amount of processing.
On a positive note, there were no errors and we successfully processed over 1,000 orders in a much faster period of time than her production site.
Further Investigation
After we realized that the CPU load was so high, we started to experiment with disabling certain plugins to determine if we could isolate what was causing such a high load.
We quickly isolated the issue to one of 3 plugins related to MemberPress and eventually determined it was the MemberPress Beaver Builder Add-on. We then reached out to MemberPress and got them involved and within a short period of time, they identified the issue and provided an update to the plugin.
We re-ran the load test and the results were much more in line with what we were expecting.
We utilized 40% less resources and lowered the response from ~7000ms to 2500ms and went from barely 2 checkouts per second to almost 4.
Onboarding and Migration to Convesio
Once we had the test results in hand, we were able to provide a price estimate for the resources needed during the sale day.
We beat the price quoted by the previous host by an order of magnitude, including ScaleOps – our live DevOps monitoring we provide to customers who have high scale events.
THE RESULT
A Successful Sales Event
During the sale day, our team of experts were on standby and actively monitoring the site in real time during the first announcement of the offer.
We provide real time feedback of the live event and report back on CPU usage, RAM, and traffic. This provides a baseline of real world data, which is far more accurate than load testing data.
Since we had no idea what to expect, we also implemented a Cloudflare Waiting Room as a safety net. If the client overwhelmed the resources they had, then the waiting room would queue users without dragging down the performance of those users already shopping or logged into their courses.
During the day of the sale, we did not need the waiting room – and we had zero performance issues and no errors in the site. Our team documented the performance and shared it with the agency in our shared Slack channel, helping us prepare for future events.
For the last few years, my annual sales event has crashed in the first few minutes, as emails and viral social posts brought thousands of users to my site at once. This was a really stressful experience for both me and my customers.After switching to Convesio, these problems disappeared! During this year’s sale, the site had zero performance issues and I didn’t lose any sales. Major props to the Convesio team!
Get Started