Share, , Google Plus, Pinterest,


Posted in:

The Database that Powers Your Favorite Mobile Games


When millions of players open up the popular turn-based role-playing game “Alliance: Heroes of the Spire,” they care most about whether or not their team is balanced enough to dive into the next dungeon, or if they’ll have enough War Energy to make it through the next level. The average gamer is blissfully unaware of the work that’s being done behind the scenes. New features are constantly being added, refined and developed, while maintenance and incremental updates are constantly implemented in order to keep a game running smoothly and responsively. Players nowadays will immediately switch to other applications if they notice a lag or any sub-par performance. Gaming companies like Rumble Entertainment leverage high-speed databases like Redis to manage essential data and social throughput features in games like “Alliance.” Redis Enterprise enables them to run their gaming infrastructure at a global scale, and deliver top-speed performance in a highly available, infinitely scalable, predictable and stable manner.

Versatile Data Structures Facilitate Easy Development

Many game developers rely on their data as much as they do their code or media. Online and mobile games — especially multiplayer games — are known for their stringent low latency and performance requirements, and tap into tools like Redis’ versatile data structures to fulfill these. For example, Sorted Sets are ideal for managing player leaderboards because they automatically store members by associated score or rank. With Redis’ blazing fast data structures, it is trivial for a multiplayer game to rank hundreds of thousands of players by their number of points earned and keep a real-time global leaderboard of the highest achievers.

Another popular game designer, Scopely, uses Redis Enterprise to power customizable leaderboard lists, among other things. Scopely needed impeccable management for multiplayer tournament events in its game, “WWE: Champions.” This multiplayer puzzle role-playing game (RPG) lets players collect and match up WWE superstars against each other. These tournaments are real-time, so they require extremely low response times and the ability to manage and list over 50,000 instances. Lists like these are continually updated and paged through by users checking their global standing. Ankur Bulsara, co-founder and CTO at Scopely, notes that real-time integration of leaderboards and user profiles is essential. “It is because of Redis Enterprise’s performance and service that we have increased our consumption and dependency on Redis as a critical piece of our infrastructure. Some of our highest throughput social features are built on Redis Enterprise, features that would be much harder to execute without it,” he said.

The sub-millisecond latency and resilience to failure that Redis provides is essential for maintaining smooth and responsive games. Rumble Entertainment uses session management in games like Alliance to store and update user session data in real-time.  Sam Neth, director of platform and architecture at Rumble, said “Redis Enterprise enables rapid development of incredibly high-performance services and it completely eliminates any worry about deployment, management, upgrading, backups, and scaling for far less than it would cost us to run the service ourselves.”

In addition, the developers of award-winning games like Bejeweled and Plants vs. Zombies depend on session management in Redis databases to maintain up-to-date player stats. An average shopping or social site can afford a few seconds of buffering for an update, but such latency would be unacceptable for games like Alliance or Bejeweled, which depend on accurate, up-to-date player sessions to keep their players’ attention. Another great use case for Redis is a fantasy sports app that relies on the database to deliver up-to-date player session info that serves as a backbone of the gameplay. In a fantasy sports app, users must constantly navigate between athlete profiles and stats, so players wouldn’t be happy if their current sessions were constantly reset.

Roblox, the world’s largest social platform for play, attracts over 48 million players who log in every month to make friends, customize their avatars, and imagine, build and play together within immersive 3D worlds. Everything is user-generated by the players themselves using tools for building, modeling and scripting within a fully featured physics engine. Roblox is hosting and scaling millions of multiplayer user-generated games for its growing community of 1.7 million creators.

Handling High Throughput Social Features

Although Roblox’ primary use case for Redis is as an LRU cache, the company also uses Redis Enterprise for messaging. With Redis’ pub/sub capability to deliver messages from one part of its system to another. After rebuilding its real-time message delivery system with Redis, Roblox saw a 4x increase in its users chatting, a growth easily managed thanks to Redis’ effortless scalability.  Players now rely on Roblox to provide both accurate and up-to-date player information, as well as the ability to interact instantly with their friends. “For social games, chat is very important,” said Peter Philips, senior software engineer at Roblox. “It’s not just about talking with friends, it’s about facilitating and coordinating activity when users want to play with their friends. It allows them to see if their friends are online and what games they’re playing.”

When it comes to supporting this kind of social engagement, high throughput must be handled flawlessly. Pirate Kings is a multiplayer mobile app developed by Jelly Button Games, another Redis user. Players take on the role of a pirate and compete against each other to conquer islands while earning gold and artifacts to build on conquered land. With 80 million engaged users battling in a fully realized world, player profile information is essential and a pirate’s individual profile contains a lot more detail than the average gaming app. Not only is there a score to keep track of, but also the player’s inventory, experiences, artifacts, etc. In most games, profiles are updated less frequently than player rank and sessions, but in Pirate Kings, profiles are accessed constantly by all players. To meet this demand, Jelly Button Games relies on a Redis database that instantaneously handles 20,000 ops per second with an average latency of less than .06 milliseconds.

Another example that demonstrates how Redis’ high-speed transactions can manage customer engagement and social applications is a smash-hit game out of Finland. The game has 200 million monthly active users, most of whom aren’t aware of the amount of data their app is generating. That said, the game company still needs to optimize for instant response times to queries in order to maintain the loyalty of its massive user base, and serves both content and social content from Redis.

To keep customers engaged, gaming apps must respond with appropriate content in milliseconds. An often overlooked use case in this environment is ad targeting and personalization. From the user’s perspective, any time in the app spent outside of the gaming experience is a disruption. According to Localytics, the average user session length (time spent in an individual app)  is 7.55 minutes per month. Typical freemium game apps display personalized ads for 15-30 second snippets, taking up to 30% of a user’s time on the app. That’s a lot of time spent watching ads, but thanks to Redis, game developers can serve these ads with minimal latency to maximize throughput. Entertainment companies must deliver ads in real-time or they risk losing users’ interest. With Redis Enterprise’ low latency, fast throughput and built-in analytics, entertainment apps can deliver personalized ad content that’s been influenced by the unique focus and strengths of each network.

Of course, ad networks work with tight latency budgets and a high volume of requests, so they need to deliver content with sub-millisecond latencies to meet network demands. Even mobile in-app video advertising platforms that provide ad targeting resources to gaming customers count on Redis’ speed and high reliability to deliver targeted ads to its own customers. One leading ad platform’s head of engineering said, “Redis Enterprise has drastically reduced our support burden for Redis. We no longer worry about cluster capacity, scaling or failover.”

Sub-millisecond Response Times for High Frequency Actions

Interactive gaming apps also need to embed analytics in order to generate a more streamlined customer experience without sacrificing performance speed. For fraud detection, many game companies use Redis Enterprise’ in-database analytics to prevent collusive play, abuse of bonuses or even player credential theft. Through real-time communication, Redis users can instantly detect odd or unusual behavior. Data for this kind of analysis usually comes from several different sources, and is continuously compared with current user behavior to find and prevent fraud. Redis effectively incorporates this intelligent machine-learning without disrupting the performance or responsiveness of the applications it supports. Companies like Scopely and Rumble Entertainment use this real-time communication between data sets to analyze the flow of communications happening in their games.

Less specific to the gaming industry, but just as important, is Redis Enterprise’ ability to deliver continuous high-speed performance with high availability. It’s safe to say that the average user has a short attention span. Localytics found that one month after a game is downloaded, 73 percent of its users are no longer playing the game. And by 3 months, the churn rate has increased by another 20%.

Game play apps cannot afford any downtime or lag because they run the risk of losing the user’s attention or ruining their overall experience, thereby directly impacting a game’s revenue. Redis offers companies like Roblox and Scopely seamless, zero-downtime scaling and clustering, as well as instant auto-failover/switch-overs, so that even during peak traffic, they don’t lose speed. Roblox’  active user base has  increased 200 percent over the past couple of years, and can hit 1.1 million active players at peak times.

For Scopely, if response time decreases, user engagement increases and as a result, revenue increases. “Redis Enterprise has all the key features we look for in a database­ as ­a ­service (DBaaS) product: automated scalability, automated failover and recovery, reliability and superior performance. Moreover, we’ve found the platform’s pay­-as­-you-­go pricing to be very affordable and developer friendly,”said Ankur Bulsara, co-founder and CTO of Scopely. Both Scopely and Roblox have had to deal with some challenging scaling issues, which they’ve easily handled — thanks to Redis’ real-time scalability.

Twitch, the world’s leading social video platform and community for gamers, has over 100 million community members. At peak times, more than two million concurrent visitors are watching and talking about video games from about 1.7 million broadcasters. At such a large scale, high availability is crucial to the user’s experience. In Twitch’s data environment, Redis Enterprise serves as a first responder database handling site-wide chat functionality. These chatrooms sometimes scale to over 400,000 users, and low latency at such high volumes becomes imperative. This is why Twitch adopted Redis, ensuring  fast-performance, simple data processing with minimal hardware.

Redis Enterprise is at the Forefront of the Entertainment Industry

Entertainment companies are early technology adopters, spurred by an audience that is typically tough and unforgiving. We’re at an age in gaming where high speed and maneuverability is expected. And since the amount of time a player spends logged onto an app directly correlates to their time spent watching ads or spending money on in-game purchases,keeping players engaged and happy is critical to a game’s lifespan. Any hiccup can result in a player logging off.

Game developers look to Redis to provide the top speed and stability for their data storage needs because without both, they risk losing their customers. As other consumer industries adopt gamification to engage their customer bases, the best technologies used in media and entertainment are becoming go-to solutions for those looking to achieve  similar real-time user experiences. Redis Enterprise’s high responsiveness and high availability guarantee smooth experiences for a broad swath of consumer-facing applications.