April 25, 2013 - by Hannah Simon
Sven Studios is an indie game developer that has been making massive multiplayer Android games since 2011. Due to the nature of their synchronous games, where everyone plays on the same game board at the same time, Sven Studios sees unique traffic patterns; every player is fetching the game board, or game results, within a similar timeframe. When one of their most popular games, [WordHero], was featured on Google Play, Sven Studios saw a major jump in users -- from 30,000 downloads to more than one million in a short period of time.
After the huge traffic spike, Sven Studios experienced revenue threatening growing pains. Their game developers had to re-write the backend very quickly -- it had been written on Google App Engine, which they found couldn’t scale cost effectively to support their rapidly-growing business.
“Google App Engine's Python implementation isn’t optimized for simultaneous users because it tends to need one instance per user request,” explained Richard Steventon, founder of Sven Studios. “Given our traffic pattern, this would mean a large number of instances might be needed, many of which would then sit idle most of the time. This is extremely costly, and ineffective.”
To reduce the number of concurrent connections for the same data, Sven Studios tried to use CloudFlare as an edge-cache, but they could not react within the five-second window required. So, Richard explains, the team built a custom Node.js-powered proxy instead.
“As you can imagine, this solution requires very little CPU or disk, but it does require burst bandwidth,” said Richard. They were originally hosted on Rackspace; however, Rackspace’s lowest-priced offering didn’t have much bandwidth, which “was less than ideal when dealing with 1000+ simultaneous users.”
Ultimately, after looking at a number of alternative cloud platforms, Sven Studios moved off Rackspace and onto Joyent; they were up and running “literally within a couple of hours,” according to Richard.
Joyent enables us to deliver a much richer user experience. - Richard Steventon, Sven Studios founder
Sven Studios has a unique “hybrid approach” to cloud hosting architecture. All of the game logic happens on Google App Engine and is stored on BigTable. Joyent is their distribution point over thousands of users on the front end.
The biggest benefit in running this hybrid solution powered by Joyent? Knowing that their gamers are going to have an awesome user experience.
“Joyent enables us to deliver a much richer user experience,” said Richard. “There’s a lot less delay; players aren’t getting their scores dropped anymore. In addition, we have peace of mind knowing the Joyent cloud is built to deliver 99.999% cloud uptime.”
Sven Studios had such a good experience using Joyent for [WordHero] that they used Joyent again when they built their second game, Anagram Hero. Richard expects their third and fourth games to also be powered by Joyent as well, and we look forward to working with them on their upcoming releases!