redis常见的几种使用场景

排行榜top100

相关函数 zAdd + lRange

使用方式 使用zAdd记录每个value的分数值,字段即可实现排序,再进行lRange进行取前100,就实现了排行榜的效果

计数器

相关函数 incr + decr

使用方式 设置一个初始值为1的key,对其进行incr/decr操作,进行计数的功能。

队列

相关函数 rPush + lPop + lSize

使用方式 对一个key进行rPush关键字,再lPop取出关键字进行相关的业务处理,直至lSize为0

接口频率限制

相关函数 incr + expire

使用方式 根据ip与时间(粒度可自定义,比如每小时)为key值进行incr计数,并设置expire有效时间,在有效时间内次数大于阀值则给相关的限制

数据池

相关函数 hSet + hLen + hKeys

使用方式 根据key值进行hSet设置数据池中的数据,hLen查询数据池的数量,若有则hKeys取之

在线时长

相关函数 setEx + get + set + hIncrBy + incrBy + ttl + expireAt + hGetAll

使用方式 先setEx记录上一次操作时间,并用get获取与当前时间对比,若低于某阀值,则视为在线,set更新上一次在线时间,同时hIncrBy当前小时的在线时长(注意59分的情况),incrBy当天总的在线时长,ttl检测总时长是否设置了过期时间(以免垃圾数据),并expireAt设置到某时过期,另走队列hGetAll取出当天每小时的在线时间进行记录。

未完待续…

如果你觉得有收获~可以关注我的公众号【咖啡色的羊驼】~第一时间收到我的分享和知识梳理~
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值