I’ve been working lately with a project that involves WordPress and Microsoft Azure. It was new to me since I’m only comfortable with Linux servers may it be shared or dedicated. Now the thing is that I was thinking that it’ll be a breeze to manage WordPress in an Azure environment, but I guess I’m wrong. It seems that right off the bat, Azure can’t handle WordPress in a default setup wherein you’ll only have the most basic plan because it needs a quite a lot of power. The 20mb database won’t cut it and if you’re running on shared, better off with the basic or standard plan.
I can’t divulge everything so I’ll just be general. The current site’s setup is in Basic plan and Jupiter database which on paper, would go along nicely. Now the fun part is that it doesn’t have enough power to load WordPress to 2 to 3 seconds. The current setup is still running towards 4 to 7 seconds with no traffic for WordPress to load. Yes, you heard me, no traffic. So I’ll present to you a small list on why you should stay away from Azure if you are planning on putting up a WordPress installation.
Upscaling Your Server
When you upgrade or upscale your server, it often makes your pocket cry. The current setup that the website that I’m working on right now is Basic and Jupiter so if you crunch the numbers, you’ll go around $100+ per month. That kind of money can get you a better server setup somewhere.
Some Plugins Doesn’t Work
Yes, some plugins don’t work here. The reason why some plugins don’t work is that it is dependent to Linux instances and libraries. One good example of this one is some backup plugins which are dependent on Linux’s zipping mechanism which on Windows, they handle it differently. Considering this, migration is a bit of a hassle if you are using BackupBuddy wherein you’ll just upload a zip file and pushing a couple of buttons. I haven’t tested other plugins yet, but the migration thing is what I can think of.
So Slow
You can get this by doing browser caching, minifying CSS/JS, and server caching but when you access the administrator side, you’ll get my point. There are some instances that just loading the dashboard takes around 10 seconds. I’m not sure what the reason why, but I’m thinking it the way that Azure manages its database connections. There’s a plugin available in WordPress that sort of fixes this and that is Persistent Database Connection Updater. Mind you, there’s a drawback into using persistent database connection.
Are there other ways to speed up WordPress in Azure?
There are ways to speed things up. Though it’s not a 100% fix to some of the issues that you’ll encounter. You could use caching mechanisms on both browser and server side to speed things up. Plus you can minify JS and CSS to optimize the files. Then remember to optimize your images because if you have a 700kb+ image, you’ll going to wait for next year just to load that image (Sorry, I was just being extreme). You can use these set of plugins to make your website run smoothly:
- Any Caching Plugin that you like (I prefer using W3 Total Cache)
- Autoptimize
- WP Smush
- Lazy Loading
Here are some options that you can add into your .user.ini:
upload_max_filesize = 12M;
memory_limit=256M;
output_buffering = Off;
Given this many heartaches, I do not recommend working WordPress with Azure. It’s just not good enough. I’m not saying to stay away with Microsoft Azure completely because that server works well with other stuff. It’s just not good with WordPress.