私はリーダーボードを作成するために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