Last week, Facebook went down for four hours. To many of my readers, that may seem trivial – Facebook is just a gossip website anyway, right? But Facebook is hosting streams for more than 300,000 businesses . . . that is a large number of customers to annoy at one time.
It is a basic fact of service oriented architectures (SOAs) that all clients get a consistent experience. When you upgrade your service, all customers immediately get the upgraded service. When you introduce an error, all customers immediately get the broken service.
Wait, I thought SOA was finally gaining acceptance? Isn’t that the software way to say ‘cloud’?
Are you sweating yet?
The benefit of a SOA is that adding in redundancy and scalability is easy by following good design practices (like REST) which require you to encapsulate logic and embrace stateless design. But I will confess that it is much harder to design your system this way than reading a Wikipedia page and grabbing a Python book.
This is why I think Platform as a Service (PaaS) is the way of the future, with Google App Engine (GAE) being an obvious front-runner. With PaaS, developers focus on writing small bits of code that link robust components together. It’s the ultimate in software design, separating things that change from things that stay the same. And you get Google’s quality.
Do you think you will invest more in R&D towards uptime than Google this year? How about next?
It’s been surprising to me how much cloud discussion is around virtualization (Infrastructure as a Service), which is doing things the old way with new software. I’m not sure how much benefit there really is in this space, aside from IT hosting.
What do you think, does the Facebook failure scare you? Do you trust Google with your platform?