我正在使用redis创建一个排行榜,并试图找出一种处理获得相同高分的玩家的好方法(具有相同高分的玩家应该按照谁首先获得该高分来排序)
我曾想过做以下事情......
zadd leaderboard highscore.timestamp player_id.attempt_number
但是,当我执行 zrevrange 时,时间戳显然会以错误的顺序排列。
示例输入:
zadd leaderboard 20.123 5.1
zadd leaderboard 20.125 5.2
zadd leaderboard 20.012 5.3
zadd leaderboard 21.024 5.4
输出:
zrevrange leaderboard 0 -1
5.4
5.2
5.1
5.3
期望的输出:
5.4
5.3
5.1
5.2