Redis 5种基本数据类型及其应用场景

1、字符串
  • 缓存对象信息:将对象信息缓存到redis中,具体操作是将对象信息序列化为字符串,存到redis;读取数据的时候,从redis中取出后,反序列化为对象。
  • 计数器:文章浏览次数、点赞数量,可以用redis的 incre 命令实现。
  • 共享Session信息:在分布式系统下,用户每次请求会被随机分配到不同的服务器上。假设第一次用户访问服务器A,服务器A存储 Session信息,第2次访问时,被分配到了服务器B,因为服务器B没有存储 Session 信息,所以用户需要重新登陆;为了解决分布式系统下,存储Session 遇到的这一问题,可以使用缓存系统,对这些 Session信息进行统一存储和管理,这样无论请求发送到哪一台服务器,服务器都会统一去的缓存系统获取相关的 Session 信息。
  • 分布式锁:可以使用redis的setnx命令实现,因为这个命令只有在key不存在时才能设置成功,设置成功返回 1, 设置失败返回 0
2、哈希
  • 缓存对象信息:对象中频繁变化的属性可以用哈希存储,它和字符串的区别就是,字符串存储需要手动进行序列化操作,而哈希可以直接进行修改(例如购物车中的:商品数量、变化比较频繁,适合用哈希存储->key是:用户id,field是:商品id,value是:商品数量)
3、列表
  • 消息队列:因为列表具有先进先出的功能,所以可以实现消息队列
4、集合(数据去重、集合的一些运算)
  • 数据去重->抽奖活动:把中奖人信息存入到集合中,保证一个人不会重复中奖
  • 集合交集运算->共同关注:可以用来统计两个用户共同关注了哪些博主
5、有序集合(排行榜、展示最新列表)
  • 排行榜->积分排行榜、销量排行榜
  • 展示最新列表->展示商品的最新评论:因为有序集合每个元素都有自己对应的权重,可以对每个数据设置权重之后,再保存到SortedSet中,权重可以按照数据的时间顺序进行设置,越新的数据权重越大
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值