ソートされたセットのスコアは倍精度浮動小数点数をサポートしているため、おそらくより良い解決策は、redisスコアをhighscore.timestamp
として保存することです。例えば(擬似コード)
highscore = 100
timestamp = now()
redis.zadd('myleaderboard', highscore + '.' + timestamp, playerId)
これは、同じハイスコアを達成した複数のプレーヤーも、次のように、そのハイスコアを達成した時間に基づいて並べ替えられることを意味します
プレーヤー1の場合...
redis.zadd('myleaderboard', '100.1362345366', "Charles")
プレーヤー2の場合...
redis.zadd('myleaderboard', '100.1362345399', "Babbage")
詳細については、この質問を参照してください:redisリーダーボードの一意のスコアリング