This post might be written out of frustration, but I wanted to put this out before the heat of the moment fades away. Amazon had a power outage in its Virgina data center last night due to a storm, and services like Netflix, Instagram, Pinterest, and Heroku have taken a hit.
You could throw a jab at Amazon for supposedly being unable to turn to their backup power supply. But the real crime is that Heroku is down.
Heroku is a PaaS (platform as a service) provider that provides black box webapp infrastructure and is built on the back of Amazon. Heroku is basically the second layer from the bottom up in:
On top of Heroku, developers like me and @seejohnrun build SaaS services that rely on Heroku. And further, we might built apps that depend on our SaaS services. That’s an awful lot of dependency going on.
It reminds me of the debate between Thomas Jefferson and Alexander Hamilton on the topic of whether America would be better off as a nation based on agriculture or industry. 200+ years later, are we better managing our own server architecture (farming) or outsourcing it to someone else (industry)?
There are benefits to both, but the Heroku outage highlights that fact that for such a high level of interdependency to work, each layer on the stack above needs to be able to operate in some capacity if the layer below it is unavailable or crippled. In theory, Heroku customers shouldn’t even care about an AWS outage.
But that’s not the case, Heroku is down, and the affected apps on Heroku are left with the realities of not being able to help their own situation. If you were managing your own servers on AWS (farming), you could be back up in an hour. With heroku, you have a big purple curtain concealing the details. That same curtain had me mostly convinced that availability issues on a PaaS provider like Heroku were taken care of for me.
Anyway, just something to chew on. Think we have learned our lesson and will move off Heroku when this outage is over. I’m not saying that out of spite — just the realization that’s I’ve put a lot of faith in a black box.