WordPress Optimization: Part 1
WordPress is a bulky application by nature, and with its ecosystem makes it easy to install anything you can imagine. This comes with some reasonable consequences as there will be more weight on the application during load time.
For part one, we’re going to focus on the server-side of things, specifically, what can you do to make your server faster to serve the WordPress instance?
Operating System Choices
First, you need to think about the very lowest levels, starting with the operating system. What operating system are you going to run? Personally, I’ve picked CloudLinux (paid) but Centos 7 is a good choice as well. I’ve went with the CentOS-style operating system CloudLinux because of it’s Lightweight Virtual Environment (LVE) and the operating system itself has made the site faster due to it’s internal optimizations.
Server Stack
Now it’s the server stack, what are you going to run on your server? For example, I’m using Plesk Obsidian which bundles Apache, Nginx with it, in this configuration I’ve elected to use Apache for the wordpress itself with PHP 7.3 and use nginx to serve all static resources, as well as providing a light caching layer on top of them.
My recommended setup for anyone would be use nginx for serving static resources (html files, css, javascript, images) and ensure you setup proper encoding. If you’re using a panel such as Plesk, this is configured in less than 2 clicks.
Additional Considerations
You also need to consider how much traffic your blog currently generates, the total rate of requests per second, and what benefits you will gain from making your website faster under load. For example with this website, instead of a 3-5s load time under my previous configuration of Debian 9 “stretch”, 1 GB ram and 1 vCPU with Apache, my new configuration of CloudLinux, Imunify360, Plesk Obsidian, 4 GB ram and 4 vCPU has my website loading in most places in under one second flat. This is a significant improvement, and I’ve heard that fast load times also help improve SEO.
Your mileage may vary, if you need help with anything feel free to give me a shout!