In Redis esrank uses stored sets of redis. In member key, high-order 32-bit data is timestamp and low-order 32-bit data is uid(userID). So using ZREVRANGE, you can get correct ranking data, that is earlier scorer gets higher rank in same score.