High availability is one of the four “pillars” of an Enterprise architecture, but also, one of the most misunderstood terms in the WordPress hosting world. That usually leads to further ill communication between clients and businesses.
But that shouldn’t be the case and as we will discover shortly, it is a very simple concept to grasp. Also, once we clear out the confusing bits, you’ll be able to evaluate and understand what a company offers to you, and whether that offer delivers on the promise.
What is a high availability architecture?
High availability architectures implement two distinct concepts: Clusters and multiple tiers.
A high availability architecture, at its simplest, is the idea of having more than one copy(node) of your website running. If your website breaks, the other copy will process your visitor’s requests and there will be no downtime.
The most commonplace high availability cluster designs are two:
- In active/active, both of nodes A and B, the main and the copy, are in operation. This design is used when you need to handle a large volume of requests. Visitors browsing your website end up in either one every time. Thus, the load coming from your web visitors is balanced between two nodes.
- In active/passive configuration, the main node A is in operation, and the B copy node is in “stand-by” mode. When node A fails, the B copy “wakes up” and becomes the active A node, while the failed node becomes B. This is called a failover, since the copy is activated when the main node malfunctions. This design does not provide load balancing, but it can be less expensive to maintain and setup.
Clusters can be thought of as the essential building blocks of a high availability architecture. Enterprise environments, organise clusters in multiple tiers. (n-tier architecture). The most common tiers are the presentation tier, the application tier, and the data tier.
This means that the view of your website, the code that drives it, and the data around it, are separated into three distinct “layers”. Web servers and HTML data reside in the presentation tier, code and applications to the application tier, and naturally, the database to the data tier.
Why is a High Availability architecture better?
By combining clusters and multiple tiers, you create a high availability architecture that you can easily maintain and secure. Its advantages, over single or shared hosting environments, are numerous:
- Fault tolerance: this is a system property of high availability architectures that enable websites to operate continuously, even when some or all of its components fail.
- Maintenance operations do not cause downtime: having your website hosted in a cluster enables you to upgrade it without any outages. One node can be in maintenance mode, while the other is online serving your customers. When the upgrading on the first node finishes, it goes online, and the maintenance continues in the second one.
- Easier scaling: If your website needs to address a larger volume of requests, you scale it horizontally, that is, you add extra nodes to the cluster. On the other hand, if you want your website to have more processing power or memory, you scale it vertically by adding more memory or upgrading the CPU. In both of these cases, there is no downtime: At least one node is online and operational during scaling upgrades.
- Load-balancing: By using an active/active configuration, you can distribute the load across two machines, instead of having just one. That means being able to handle more concurrent requests from visitors. And if your needs are highly demanding, you can scale horizontally, by adding extra nodes to the cluster.
- Better security: By dividing the infrastructure into separate tiers, you can enforce different levels of security and even different types. You can place multiple firewalls between each tier and have very high restrictions on who can connect to a tier and from where. This means that in the case of a security incident, the attacker will not be able to gain access to the whole system.
- Better maintenance: Software upgrading operations are less error-prone and simpler by having the operating system configuration, applications and such, provisioned differently for each tier. When a provider hosts everything on a single machine, there is a risk that if one software upgrade goes wrong, the machine may experience downtime. By using separate tiers you mitigate all of that because if a software upgrade fails, there is no danger that it will affect other areas of the system.
But the benefits are not only technical ones. Having your website hosted on a high availability architecture translates to benefits for your business too:
- No outage costs: A high availability website means that your business will always be up and ready to process requests. Being unable to process requests means lost revenue.
- No wasted time: When something breaks it will remain broken until it is fixed by a ..trained professional! This means 100% downtime of your website and business if it is hosted on a non-high availability architecture. Every counting hour of downtime means again.. lost revenue!
- Customer trust and loyalty: Having your systems always up and operational builds trust between you and your customers. Your customers know that your business works and that they can get support in every step of the way.
- Better SEO ranking: A High Availability enterprise architecture can improve your SEO ranking by offering your website a “class of nines” uptime.
What High Availability is not!
Until now it would seem that high availability is the cure for everything. Unfortunately, it is not so. It is true that high availability architectures provide a robust and resilient way for your website’s hardware and systems software to fail gracefully. However, it can’t do anything if your WordPress software is the cause of an outage or slowdown.
If your software is buggy, then its bugs will also be.. highly available!
Noticed before that we mentioned hardware and systems software? A high-available website means that it “runs” in two instances, but says nothing about the quality of the website’s software. On the other hand, low-level systems software is generally much more stable than most types of other software. It is only logical; systems software is a critical piece of a computer. So high availability works because the software that implements high availability is stable. It has undergone rigorous testing and quality assurance before being released.
Try our Award-Winning WordPress Hosting today!
This has parallels with physical engineering as well. You absolutely don’t want a bridge, or a transportation system, or a rocket to have “bugs”. Similarly, you don’t want buggy systems software as their malfunction can nowadays jeopardise whole enterprises, businesses, academic networks, and basically pretty much everything.
Pressidium’s Managed WordPress Platform
When we started working on the platform that would eventually become the Pressidium Platform, we worked following these ideals:
- Everyone should enjoy the benefits of Enterprise-grade hosting without having to pay obscene amounts of money.
- Enterprise-grade would mean exactly that. Performance, High-Availability, Security, Scalability.
We do not resell other people’s Enterprise architecture. Our managed WordPress Platform is built from the ground-up by us. It leverages our 20+ years of experience in Telecoms, and our passion for complex systems. We do not sell fool’s gold by the river. As engineers, we understand very well the frustration that comes when something is not working correctly, or when something is advertised as being something else.
Conversely, we revered the systems that did work as they were supposed to.
Ultimately, that’s what we aimed to build and nothing less.
The benefits of using our platform
Using Pressidium’s managed WordPress platform
- you gain access to Enterprise-grade service on all plans, even standard ones. Fault-tolerance, load-balancing, everything.
- You get optimal performance using adaptive caching techniques specifically tailored for your website. Our caching tier is second to none, and it shows.
- you get high availability even on the level of filesystem, using our parallel file system data tier.
- With Enterprise-level plans, you get a dedicated n-tiered cluster architecture just for your website, ready to scale in every direction for your demanding needs.
In our article about Pressidium Platform Enterprise Architecture, we are expanding on the rest of the fundamentals, such as security, performance, and scalability. We also shed some light on certain implementation details behind our managed WordPress platform.
We feel that it is our duty, as engineers, businessmen, and fellow human beings, to be completely honest and transparent about the service we provide and having in mind the customer’s needs and budget to provide the solution that is the most advisable.