几个基础命令
keys *
exists key
del key 由于del不支持通配符,所以可以结合管道和xargs,redis-cli keys "user:*" | xargs redis-cli del
type key 获取键值的数据类型
字符串
命令
set key value 赋值
get key 取值
incr key 递增数字
incrby key increment 增加指定整数
decr key
decrby key decrement
incrbyfloat key increment
append key value 向尾部追加
strlen key 获取字符串长度
mget key [key ...] 同时获取多个键值
mset key value [key value ...] 同时设置多个键值
最好使用“对象类型:对象ID:对象属性”来命名一个键,eg,user:1:friends
- 文章访问量统计
- 生成自增ID(作用同关系型数据库的auto_increment)
- 存储文章数据
散列
hset
hget
hmset
hmget
hgetall
hexists
hsetnx key field value 如果字段存在命令不执行任何操作
hincrby key field increment
hdel key field [field ...]
hkeys key 获取key对应的所有字段
hvals key 获取key对应的所有字段对应的值
hlen key 获取字段数量
- 存储文章数据
- 存储文章缩略名
列表
list可以向两端添加元素,或者获得列表的某一片段
lpush key value [value ...]
rpush key value [value ...]
lpop key
rpop key
llen key
lrange key start stop
lrem key count value
lindex key index
lset key index value
ltrim key start end
linsert key before|after pivot value
rpoplpush source destination
- 存储文章ID列表
- 存储品论列表
集合
sadd key number [number ...]
srem key number [number ...]
smembers key
sismember key member
sdiff key [key ...]
sinter key [key ...]
sunion key [key ...]
- 存储文章标签
- 通过标签搜索文章
有序集合
zadd key score member [member ...]
zscore key member
zrange key star stop [withscores] 按分数从小到大
zrevrange key start stop [withscores]
zrangebyscore key min max [withscores] [limit offset count]
zincrby key increment member
zcard key 获取集合中元素的数量
zcount key min max
zrem key member [member ...]
zremrangebyrank key start stop 按排名范围删除元素
zremrangebyscore key min max 按照分数范围删除元素
zrank key member 获取元素排名
zrevrank key member
- 实现按点击量排序
- 改进按时间排序