Wooga, a startup based in Berlin and founded in 2009, develops games for social networking sites that users can play on Facebook or on their smartphones and tablets as well as cross-platform. The company's games (which include Monster World, Magic Land, Bubble Island and Diamond Dash) are available in 18 languages. More than 260 employees from 35 countries work to develop new games in small, independent teams of around 15 people. Each team is free to choose their own tools and decide whether to host games in the cloud or on a physical machine.
Wooga needed a cloud solution specifically for social games, which have a variable and unpredictable number of players who require quick reaction speeds and high server reliability. These browser-based games can attract significant numbers of players in a short time. For example, Wooga’s Monster World has approximately two million players per day, corresponding to 15,000 requests per second at its peak, according to the company. Monster World runs entirely on the AWS Cloud. Another Wooga game, Magic Land, has 850,000 players per day, corresponding to 5,000 requests per second at its peak.
A game’s success or failure is determined largely by adoption rates—the number of users who decide to play. The number of players can be unpredictable; for some games, that number increases rapidly and then drops again. The challenge for Wooga is to continuously engage the players’ interest and provide for a high retention rate.
Monster World is a game with classic game architecture, using a stateless application server and central databases. Magic Land, by contrast, sits on non-standard architecture with stateful application servers, using Amazon Simple Storage Service (Amazon S3) instead of databases. See Figure 1 below for a screen capture of Monster World.
Figure 1: Monster World Screen Shot
When Wooga decided to host Monster World and Magic Land on AWS, they needed a solution that would provide them with:
Hosting two of Wooga’s most popular games on the cloud meant putting a great deal of importance in whatever cloud solution they choose. “You’re putting your equity into your provider’s hands,” says Jesper Richter-Reichhelm, head of engineering at Wooga. “For us to move to the cloud, AWS was the only choice.”
Wooga requires easily scalable compute capacity to help the system adapt to fluctuating traffic volumes. The company also needed a solution that would support their lean resource allocation model, enabling small teams to work quickly to bring a game to market. AWS, with its flexibility and ease of use, provided this as well.
For Monster World, developers are using Amazon Elastic Compute Cloud (Amazon EC2) to process large and highly variable quantities of data. Amazon EC2 can adapt flexibly to the company’s computing needs and provides control over their computing resources. Acquiring and launching new server instances only takes a few minutes, so that capacity can be scaled in both directions according to computing needs. Billing by the hour ensures that even with strong fluctuations in demand, the company only pays for what they use.
Wooga uses Amazon Elastic Block Store (Amazon EBS) with Amazon EC2 instances to store social gaming data. Amazon EBS allows for storage outside the instances, thus providing independence from an instance’s lifespan. Amazon Simple Storage Service (Amazon S3) is also used for Wooga’s games, providing a simple web service interface designed to store and retrieve any amount of data at any time, from anywhere.
“With AWS, we can make decisions very quickly, on an hourly basis, whenever we want,” Richter-Reichhelm says. “Our teams can decide which servers we need, and how many we need, in a very short timeframe. AWS gives us flexibility and good service.”
To learn more about how AWS can help your gaming application needs, visit our Gaming details page: http://aws.amazon.com/game-hosting/.
Added December 20, 2012