redis set轻松做排行榜应用
Author:pako
email:zealzpc@gmail.com
最近项目有很多功能要做类似排行榜的功能,当然其实用python来做不难,不过因为排行榜的数据是要做持久化存在数据库里的,如果每次用sql 去查询在做排序 当数据量多起来后会性能很差,而且毕竟还要自己去写相应的操作特别是要查询一个数据前后名次的数据会很繁琐。
?
当然我写这篇文章就是因为发现了一个好用的工具,它就是redis自带的set类型。
?
我就不详细解释set是什么能做什么了,直接上代码更能帮助大家理解,有兴趣的可以自己去redis的官网看详细的set类型所支持的操作。
?
1)使用zadd 方法往test 这个set类型里插入了五条数据
?
key ? ?score
one ? ?78
two ? ?987
three ?45
four ? ?93
five ? ? 100
?
redis 127.0.0.1:6379> zadd test 78 "one"
(integer) 1
redis 127.0.0.1:6379> zadd test 987 "two"
(integer) 1
redis 127.0.0.1:6379> zadd test 45 "three"
(integer) 1
redis 127.0.0.1:6379> zadd test 93 "four"
(integer) 1
redis 127.0.0.1:6379> zadd test 100 "five"
(integer) 1