MySQL Running on Azure VM A0 Rock Solid So Far…

This blog runs on WordPress using Azure Web Sites.  When I first launched the site, I used the Clear DB free MySQL tier and it worked quite well until about 300-400 page views per day.  The free tier has a connection limit of 4 connections and when it exceeds that limit you start getting errors.

I then re-launched the site with an Azure SQL backend using the Brandoo plugin.  At the time, this was an option in Azure Web Sites template selection (it’s no longer available).  This worked well until I upgraded to WordPress 4.2 and then it broke completely.  I had been warned by the original developer that this would happen eventually because it was impossible to keep up with all the WordPress changes to the MySQL schema. 

I then went back to MySQL using a dedicated Azure VM running Ubuntu and MySQL.  The VM is an A0 VM which means it runs on a shared core (e.g. not even a full core) and 768 MB of memory. 

The results so far have been very good, with no downtime and no errors.  If I look at the VM performance, it’s rock solid and barely uses up the available CPU or memory available:

image

image

As you can see by the charts, the VM is running at about 2-3% of CPU and MySQL runs at about 14% of available memory.  Given this is a shared core and 768 MB only of memory, that’s pretty remarkable and a better deal than running through Clear DB at least at my current scale (peak load is about 1500 page views per day).