Back in 2014 I announced the relocation of greiginsydney.com to Azure. Today I can announce we’ve moved again – this time to Azure.
For the last few years we’ve been living on Azure’s version of WordPress as an “App Service” hosted in the West US Region. This choice of platform has to date necessitated the use of a third-party (in this case ClearDB) to host the WordPress database.
It’s an understatement to say that I’ve not found the blog’s performance anywhere near my expectation. Googling “slow WordPress on Azure” reveals this isn’t an issue unique to me, and none of the fixes offered in any of my occasional shopping expeditions improved matters:
- Disabling Output Buffering didn’t fix it
- Having “Always On” on wasn’t it either
- Not even the Program Manager of the Azure App Service has the silver bullet: “How to speed up your WordPress site on Azure App Service”
I’m guessing that a major contributor to the problem is simply the fact that the square peg that is WordPress, designed for Linux & Apache doesn’t fit so comfortably into the hexagonal hole that is Windows and IIS.
Testing the theory that it was database-related I even upgraded to ClearDB’s “Saturn” tier, but I can’t say I noticed any difference – except the major burn to my hip pocket.
Given our comfort level with self-hosting WordPress and Linux, we’ve today moved back to a dedicated Ubuntu VM hosting WordPress + on-board mySql.
The before and after shots from Google’s webpagetest.org show the immediate difference: the initial page load time halves! Note that this is the exact same blog and database, exported from one Azure and imported into another.
Yes, there are potentially some disadvantages and risks in this but I’m prepared to ride them out in return for the performance boost, and without having to learn a whole new platform. The tests above reveal other minor tweaks that can bring further performance improvements, and I’ll attack those over time.