Kara Bullock Art School

Key Takeaways

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. 

About Kara Bullock Art School

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.

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.

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.

Ready to Switch to Convesio