Richard Bucker

Zero Downtime Deploy is a Useless Myth!

Posted at — Sep 25, 2012

I’ve touched on this before referring to erlang’s hot deploy functionality. In that case I was concerned with the notion that transactions would not be reproducible during a hotplug scenario. That elements of the transaction could be mismatched as the various code segments were deployed.This evening I read a headline that some developer had implemented hot deploy for NodeJS.  Let’s forget that NodeJS not currently a serious production environment and while it powers CoffeeScript and Less; I personally am not thrilled with the prospect of having to install NodeJS.But now there is hot plug NodeJS.I certainly get what the developer was going for but the reality is that in a production environment we, devops, are supposed to plan for this sort of thing. Our systems are supposed to have downtime.  We are supposed to reboot our systems every once in a while to make sure that we can. Every data center I have ever worked with or for has had a power outage at some point. Even the mighty Amazon AWS/EC2 has had major failures and outages.So while a hotplugged NodeJS might be interesting or novel; on some levels it’s not a real feature to bet your enterprise on.