On the edge, I’ve been there
And it’s just as crowded as back home.
Dag Nasty, “La Peñita”
Yesterday I did a little experimenting on the good old bava.blog to test the notion of application delivery networks (ADNs). You probably have heard of Content Delivery Networks (CDNs) wherein static content is delivered via caches all over a service’s global network (most popular being Cloudflare). Well, in this new acronym, beyond the content the whole application itself is cached across the network, so when one (or in my case both) servers driving the bava go down, the site is unaffected, it begins to deliver the application itself through the network. Which means not only high availability, but virtually guaranteed 100% uptime.* I found it hard to believe, and I have been looking into edge computing thanks to Phil Windley’s recent post, but this was my first exploration of the concept.
Our cloud hosting at Reclaim Cloud is driven by the software developed for Jelastic, which was bought by Virtuozzo. It has been something we’ve been pushing pretty hard on with not only apps well beyond the LAMP stack, but also containers and the wonderful work of Docker, which in turn led us to start building a dedicated WordPress service on top of performant, affordable containerized WordPress hosting: ReclaimPress. As I’ve been working through ReclaimPress, I was shown the tool/service Edgeport. Very much positioned as a simplified, easy-to-use Cloudflare competitor, EdgePort was designed as a security-first, cloud-native Web Application Firewall with a global network that delivers applications dynamically, even when the origin servers are off. Their DNS options are an affordable alternative to Cloudflare for similar plans, which has been a key factor for me. To get in the door for enterprise at Cloudflare is somewhere in the ballpark of $3,000 a month (which the condescending Cloudflare sales agent was sure to remind me), whereas all the features we need–many of which are Cloudflare enterprise only—are part of a $199 a month plan at Edgeport. What’s more, I have not seen anything like ADN delivery networks at Cloudflare, so we now have a viable, affordable alternative to Cloudflare which can do even more. That makes me very happy.
I can harness a globally cached network, as well as load balancing fail-over, and the emergency backup of applications being cached and delivered in their entirety from the network (whether or not my servers load), and that is not even including the vast security tools that I have to dig into with Noah in more detail. It seemed like magic, so I spent much of yesterday testing it on this old blog.
I turned off both servers in the failover setup at 10:59 UTC and then powered them back on at 19:48, so just under 9 hours of downtime that did not stope a single page or post from working cleanly on my site.
I had Antonella try and comment and that was not successful, and never thought to try logging into /wp-admin area, given it would seem impossible, but maybe not? Will return to that, but perhaps comments and posting do work in an ADN?†
Regardless, it was fun to occasionally search for blog posts that I hadn’t read in years, and see them load without issue, even though both servers were down.
This comes at an amazing time at Reclaim when we’re going into our second year of stable, solid .edu hosting for a number of schools, and adding this possibility for not only guaranteed uptime, but increased vigilance and next-level cloud-based security is pretty thrilling. I really want to get out on the presentation trail again and talk this through because more and more these leaps in infrastructure are something we have been just able to almost keep up with, but this one almost feels like we are not only well-positioned to offer it, but maybe even early to the party.
Reclaim4life, small and limber is beautiful!
*With the caveat that is an imagined Shangra-la if you push hard enough on the idea.
†Turns out they cannot make the database writable in the ADN, so it is read only. They mentioned it is technically possible, but not legally—which makes sense when you think about it in terms of security and spoofing, and then there is the whole issue of syncing back changes. It might make sense, if only for practical purposes, to keep everything write-only during any extended downtime.