redis 各种数据类型的实战应用场景

1.hmset 批量设置hash表中的数据
    hmset user:1 name fang view 5
2.hincrby user:1 view 1 view值加1
3.获取当前用户的微信订阅消息
    用redis的list去维护一个用户的消息列表
    当公众号发布一个新消息的时候,就向消息列表中push一条记录
    lpush msg:1 200  向id为1的用户的列表中,插入id为200的消息
    同理一些最新消息也可以用list维护
4.qq的点赞,收藏功能
    sadd like:动态id 用户id
    srem like:动态id 用户id
    sismember like:动态id 用户id #是否点过赞
5.集合运算实现微博的关注模型
    共同关注 sinter s1 s2
    我关注的人也关注了他 sismemer my s1
    可能认识的人 sdiff s1 my 
6.有序集合实现各种排行榜
    增加新闻点击值 zincrby new_set:20201212 1 新闻id
    获取当日前十点击量新闻 zrevrange new_set:20201212 0 9 withscores
7.利用redis的geo数据结构可以实现摇一摇,周边的人。
    geoadd yaoyiyao 经度 纬度 zhangsan   添加张三的坐标信息
    geodis yaoyiyao zhangsan lisi 计算张三李四的坐标信息
    georadiusbymember yaoyiyao zhangsna 100 km 返回张三100k半径的人
8.利用hyperloglog进行网页的浏览量计数,这种方式不保存集合中的元素,只统计元素不重复的数量
    pfadd view:文章id 用户id  添加用户,可以去重。
    pfcount view:文章id  计算文章的浏览量
9.利用bitmap实现0,1数据统计。比如统计一年中用户的活跃天数,以及一个月的打卡天数。优点都是同上占用内存小
    setbit status:2019-03:用户id 0 1  2019年3月第一天用户打卡
    get status:2019-03:用户id 0   获取2019年3月第一天用户打卡情况
    bitcount status:2019-03:用户id   获取2019年3月用户打卡天数

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值