wpDone provides premium WordPress hosting services. To that end all hosting includes:
mmm …. where do I start ? I am going to assume you’re a techy if you clicked through to here, I’ll pull a few punches, but dive deeper into each topic in later posts.
wpDone is not just 1 server, it’s a cluster of servers. We can add additional servers as load requires.
Each server in the cluster can process hits for any our clients web sites.
Each server has 8-32gb of RAM, and 2-6 processor VCPUs, and SSD drives. So your website will be running 12+ vCPUs and 64gb+ of RAM.
Currently we have 8 servers in the cluster, some have dedicated roles, some are multi-role.
We use varnish to provide our own CDN. This provides full page caching, without the need for WordPress plugins.
We run both php5.6 , php 7.0 and HHVM 3.9.1 (which is used to run the facebook web apps).
We use HA Proxy to manage cluster resources, and enhance security.
We have a cluster of varnish servers. The cluster alleviates the cold cache problem by doing a look-a-side to other cluster members on a missed cache.
We use redis server, and redis cache for object caching. This is local per server, not clustered. But the object cache is short lived anyway.
We have a 3 way mysql database server cluster using percona xtradb. This cluster is read/write to all servers, all the time. We also have several read only slaves, that serve the wordpress read queries. Writes go to the percona cluster. We have a custom db.php that makes sure your wordpress site connects to the correct cluster member. We also use haproxy to failover and test mysql database servers.
We use local storage for wordpress assets, like php, images etc. This storage is replicated on changes to the other php/web servers in the cluster.
We have a cluster of mod_security servers, as a WAF (Web Application Firewall). These servers check every request from the web. If mod_security considers the request unsafe, they block it, and log it. Too much logging leads to a block on the firewall.
We have a cluster of mod_pagespeed servers. This is a technology from google. mod_pagespeed changes the HTML on the page uniquely for each visitor. Its aim is for the page to appear on the end users screen faster. It rewrites images so they are smaller and faster, and does a number of other fantastic tricks. As a consequence it helps varnish to cache images, css and js, for a longer time, and more accurately.
We use a cpanel VPS for hosting staging and development. These domains/sites are not charged for, we only charge for the 1 site once. Once your site is ready, we have a cpanel plugin to push the site from staging on cpanel, to the production cluster.
At a lower level we use ubuntu, and docker to manage the software on the servers.
Some of our cluster is in our bespoke data centre running on vmware, and the rest is run out of amazon aws in Australia. We use 2 different AWS data centres (availability zones). Overall we are using 3 separate datacentres.