Update: Corsozundert.nl WordPress on Azure

Last June I blogged about me volunteering to help corsozundert.nl, the WordPress website of the biggest flower parade in the world, being able to handle more traffic around the event.. I promised a follow up on how it went 🙂

Corsozundert.nl ended up serving twice the number of pages compared to 2017 in 25% of the average page download time 😀

What did we monitor?

We created an Azure dashboard with some very simple metrics of the servers running corsozundert.nl

Obviously we needed to know if the servers were running out of resources so we started monitoring the CPU/Memory.  To get a sense of what our visitors were experiencing we also monitored

  • The number of requests that resulted in an error
  • The average response time of the app service
  • The egress of our storage account that serves as a poor mans CDN for corsozundert.nl media

We setup some alerts in Azure to warn us when some of the metrics went bad. To monitor the website from the outside world we setup StatusCake which is a great and simple monitoring tool for your website. It checked the most important corsozundert.nl pages from data centers across the world.

Before the event

A week before the event would take place we already noticed an increase of 10% in traffic compared to last year. A sign that we would be heading towards a busier than ever weekend for corsozundert.nl . The weather forecast was great, and it seemed a lot of people were planning their visits.

We decided to rule out any change to fail and scaled up and out our App Service S1 plan to 3 instances of the P1v2. That’s a pretty expensive setup but we had plenty of budget and needed to succeed. We didn’t use auto scaling because we really wanted to get a sense of control and see the impact of our scaling actions.

The Saturday before the event we already hit a record high number of visitors according to Google Analytics. This was already a success for the migration we did because last year the server collapsed under this load.

During the event

All of the team members were scattered around the village of Zundert during the event to watch the parade. We didn’t receive any down notification from our monitoring system StatusCake. It was fun to keep checking Google Analytics to see the the number of realtime visitors on corsozundert.nl , and it was fun to check the site itself and see it still responded very fast.

Winner of Corso Zundert 2018: Iguana (inter)action

After the event

We scaled back to 1 instance of the S1 App Service.  We wrote down our scaling steps (what, when and who) and gathered some key performance metrics for future reference like:

  • Number of requests (Azure)
  • Average response time (Azure)
  • Total egress (Azure)
  • Average page load time (Google Analytics)