博客列表 >Redis的常用数据类型和对应的使用场景

Redis的常用数据类型和对应的使用场景

力挽狂澜的博客
力挽狂澜的博客原创
2018年06月05日 05:19:521210浏览

redis常用的数据类包含一下5种

    string

    hash

    list

    set

    sorted set


主要的命令使用方式和应用场景

STRING [字符]

get

set

setex

getnx

getrange

setrange

getset

mget

mset

incr

decr

incrby

decrby

append

strlen

应用场景: 访问人数, IP封禁黑名单等计数应用, session


HASH [哈希]

hget

hset

hsetnx

hmset

hmget

hincrby

hexists

hlen

hdel

hkeys

hvals

hgetall

 应用场景: 结构化的对象信息,比如用户信息,每个hash表都存储一个对象实例,键值对即为对象属性


LIST [链表]

lpush

rpush

lrange

linsert

lset

lrem

ltrim

lpop

rpop

rpoplpush

lindex

llen

应用场景: 消息队列,多机日志收集,如果一个服务的运行流程在多个服务器传递,该服务的日志可以顺序写入list,再用一个work统一写入磁盘


SET [无序集合]

sadd

srem

smembers

srem

spop

sdiff

sdiffstore 

sinter

sinterstore

sunion

sunionstore

smove

scard

sismember

srandmember 

应用场景:  黑盒抽奖,社交系统的共同好友和你可能认识


SORTED SET [有序集合] 集合成员多了一个权重属性score,方便集合进行权重排序

zadd

zrange

zincrby

zrank

zrevrank

zrevrange

zrangebyscore

zcount

zcard

zremrangebyrank

zremrangebyscore

应用场景: 具有优先级的任务队列,成绩排名(选手ID为元素,成绩为权重)


参考文章: https://zhuanlan.zhihu.com/p/24054727


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议