Lessons From FarmVille: How Zynga Uses The CloudZynga's hybrid cloud strategy helps it cope with the risk of unpredictable demand for new online games.
On November of last year, CityVille made its debut. It was the latest social networking game from Zynga, a company founded in 2007 that roared to success on Facebook's coattails, since many players first join one of its games and share their activity on Facebook. Late last year, Zynga already had well over 100 million people playing the likes of FarmVille, where they compete and share tips on things like how to grow the best virtual potatoes and sell virtual pigs, and CityVille, which lets friends build virtual neighborhoods together.
Zynga IT staff watched participation on CityVille build slowly the first few days--at that pace, it might have taken two years to reach the first million participants. Then registration started to ramp up. Four months after launch, CityVille had brought 20 million new users to Zynga's daily computing workload.
- The Untapped Potential of Mobile Apps for Commercial Customers
- The Intelligent WAN: How to Keep Your Network from Becoming the New Weak Link
- Effectively Controlling IT Change
- Always Open: Why the Performance of Online Insurance Matters More Than Ever
Planning data center capacity for that kind of unpredictability is a slippery exercise. That's why Zynga instead launches games using Amazon's EC2 infrastructure as a service, so it pays only for the capacity it uses and is ready for spikes. But that's not the end of the story. Once a game hits a more predictable level, Zynga brings it in house, onto what it calls Z Cloud, servers it runs using a private cloud architecture similar to what Amazon runs.
This ability to invoke and coordinate both private and public clouds is "the hidden jewel" of Zynga's success, says Allan Leinwand, CTO of infrastructure engineering at the company. And it's also an architecture that might work for more conventional businesses, in certain situations.
Zynga is an example of an infrastructure strategy that some dub "scale fast or fail fast." The goal is to have all the capacity you might need at the moment a new product is launched, but without buying all the servers, storage, and networking. CityVille could have flopped. And if it had, Zynga would have preferred it to happen on rented-by-the-hour servers in the cloud, which can be decommissioned quickly.
Zynga's approach turns conventional cloud computing thinking on its head. The most frequently mentioned case for the hybrid approach of blending private and public clouds is "cloud bursting," where the in-house data center runs the bulk of the load, spots a spike building, and offloads that extra work to the public cloud. Zynga does the opposite, launching games in the cloud when demand is lowest--as is predictability.
But Zynga has some advantages in using cloud computing that typical enterprises don't. Zynga does one thing: It delivers variations of a Web gaming application with a social networking flavor, even if it's for hundreds of millions of different people. Having been built from scratch for this cloud computing environment, it also doesn't have the problems of integrating with a lot of legacy software and data.
Yet thanks to its experience living immersed in this hybrid cloud environment, Zynga may help or inspire IT teams as they consider new approaches, including coping with cloud outages, like the one Amazon and its customers experienced in late April.