Your SlideShare is downloading. ×
Creating Game Leaderboards with Redis
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Creating Game Leaderboards with Redis

3,743
views

Published on

The leaderboard adds a whole new dimension to your video game. It's a means of building rivalry between players and deepening their engagement with the game. But, like most things in gaming, building …

The leaderboard adds a whole new dimension to your video game. It's a means of building rivalry between players and deepening their engagement with the game. But, like most things in gaming, building a leaderboard comes with its own technical challenges.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,743
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Creating Gaming Leaderboards Using Redis Ronny López Technical Lead Backend Ronny.lopez@socialpoint.es
  • 2. Leaderboards • Effective way to show where a user stands within a gamified system • Absolute leaderboards – incentivize • Relative leaderboards – avoid disengagement of players at lower end of rankings • Several type of rankings (weekly, monthly, friends, …) 2
  • 3. 3
  • 4. 4
  • 5. 5
  • 6. Requirements • • • • • • • Add member Remove member Update member score Find member score Find member rank Associate data to members (Name, Alliance, etc…) Get slices of the ranking (for pagination) 6
  • 7. Architecture  Scalable to serve several million active users  Performance is a must 7
  • 8. Implementation • • • • • • Redis data structure server Sorted set data structure Different sorted sets for different kinds of rankings Redis hash data structure for member associated data Lua scripting for aggregating in-memory data (Sorted) Sets operations (union, intersection, etc…) 8
  • 9. Challenges • Horizontal scaling • It is not possible to shard a dataset with a single huge key like a very big sorted set • Two-phase commits if you want to execute a transaction among different data stores 9
  • 10. Summary • Redis is the right tool for the job, but datasets can not be bigger than memory • Exceptional performance (more than 8K leaderboard ops per second in a single instance) • Easy to use and understand technology • Mature and open source 10