About FunPlus Game
FunPlus Game is a mobile and social gaming company that provides interactive games for mobile devices and social networks. Friends and family can play FunPlus games on Facebook and country-specific social networks, including Hyves in The Netherlands and VZ Network in Germany. Customers can also download games from Amazon, Apple, or Google for play on mobile devices. FunPlus is a global company with offices in China, the United States, and Canada. More than 6 million active daily users across all channels play FunPlus games.
When FunPlus started in 2010, the company was using a hosted solution with a traditional datacenter provider to develop its first game. FunPlus is a six-person team of developers who use code extensively in their environment. They wanted to focus on writing games, but the servers in the data center were not programmable, and it often took hours or even days to scale servers. The team began to look for a solution that would provide scalability, reliability, and programmatic control over their environment.
Why Amazon Web Services
FunPlus considered other providers but ultimately chose Amazon Web Services because of the reliability of the AWS Cloud and the ability to use APIs for programmatic access to the infrastructure. “When I looked at AWS, I realized the power behind it,” says Yitao Guan, CTO of FunPlus. “AWS provides the means to control the infrastructure programmatically instead of just tuning it.”
The FunPlus development team used APIs to program a custom auto scaling process optimized for their game environment. This process can automatically scale to thousands of production servers during busy periods and scale down to hundreds of servers during low traffic. By using AWS, FunPlus can deploy a new server in less than one minute. “We use scripts for everything,” says Guan. “Using AWS we were able to build a true auto scaling cloud infrastructure on top of Amazon Simple Storage Service (Amazon S3), Amazon Elastic Compute Cloud (Amazon EC2), and Amazon CloudFront.” Guan estimates that it now takes less than four hours for FunPlus to set up and deploy a new release.
Figure 1 demonstrates FunPlus’ architecture.
Figure 1: FunPlus Game Architecture on AWS
After migrating to AWS, FunPlus released its first social game on Facebook. “The game grew quite quickly—from one million to three million users—all within three months,” says Guan. “We were able to spin up more than 300 servers quickly, and the entire process was handled by only one engineer. Without using AWS, we wouldn’t have been able to scale to handle the rapid growth.”
“In the last year, we’ve grown to five million users and we still only have six DevOps engineers.” Guan continues. “Next year, we’re projecting 10 million users. Our team size won’t change and we’re confident that the infrastructure will scale out.”
To manage costs, FunPlus takes advantage of Amazon EC2 Reserved Instances. “We’ve been using Amazon EC2 Reserved Instances for at least a year and overall, we lowered our service costs by 10 to 15 percent,” says Guan.
“AWS makes it easy deploy web applications,” he continues. “We can choose the tools, languages, and methods that we want to program our environment. The flexibility to focus on developing good products is the most valuable ability that using AWS can give a startup.”