B站学习视频 Redis 命令参考 数据类型应用场景string 缓存: 经典使用场景,把常用信息,字符串,图片或者视频等信息放到Redis中,Redis作为缓存层,MySQL做持久化层,降低MySQL的读写压力。计数器:Redis是单线程模型,一个命令执行完才会执行下一个,同时数据可以一步落地到其他的数据源。比如想知道什么时候封锁一个IP地址(访问超过几次)。INCRBY命令让这些变得很容易,通过原子递增保持计数。hash 存储一个用户的信息,包含以下信息: 用户ID,为查找的key存储的value用户对象包含姓名name,年龄age,生日birthday 等信息list TimeLine:例如微博的时间轴,有人发布微博,用lpush加入时间轴,展示新的列表信息。消息队列。利用Lists的push的操作,将任务存储在list中,然后工作线程再用pop操作将任务取出进行执行。 使用列表的技巧 lpush+lpop=Stack(栈)lpush+rpop=Queue(队列) lpush+ltrim=Capped Collection(有限集合)lpush+brpop=Message Queue(消息队列)set 标签(tag):给用户添加标签,或者用户给消息添加标签,这样有同一标签或者类似标签的可以给推荐关注的事或者关注的人。点赞,或点踩,收藏等,可以放到Set中实现。zset 排行榜:有序集合经典使用场景。例如小说视频等网站需要对用户上传的小说视频做排行榜,榜单可以按照用户关注数,更新时间,字数等打分,做排行。