本文主要是介绍Redis: 使用Sorted Set 解决游戏中有关排行问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
如上图: 在游戏中经常涉及到排名问题.
在排名中涉及到根据某一个值或者多个值进行排行,需求中经常涉及到:
1- 从N名到M名是哪些玩家???
2- 玩家A的排名是多少名???
3- 排名N玩家的积分是多少???
上图中需求排行的数据仅仅有 玩家名称,名次,积分,在游戏中涉及到玩家在线数据的实时更新和离线数据,数据量大而且要求及时,必须结合内存排序和数据库排序.
对于使用多种语言C++/Lua 混合编程的团队来说,并不是每一个人都能快速 准确 的完成这个需求.如果引入Redis ,就能很合适的解决上述问题.
下面代码段,模拟解决上述问题.
//使用Redis Sorted Set 解决游戏中排行榜问题
Jedis jedis = new Jedis("localhost");
//比如坐骑排行榜,需求中仅仅设计排名问题.
jedis.zadd("HouseRank", Math.random(), "UserName_House_1");
jedis.zadd("HouseRank", Math.random(), "UserName_House_2");
jedis.zadd("HouseRank", Math.random(), "UserName_House_3");
jedis.zadd(
这篇关于Redis: 使用Sorted Set 解决游戏中有关排行问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!