redis计数器
By skyshappiness Posted 2022-12-20 23:54:23 In

一、背景:

   基本就是统计下数量,然后结合 expire 过期时间,可能做个防止接口多刷的请求

二、使用场景

   1)防止短信下发的次数:

        exists key+phone

        incr key+phone

        expire key+phone  10 //设置过期时间

        get  key+phone 

        如果次数大于允许的次数,直接抛错,否则放行


   2) 微博统计点赞数、阅读数等数据

    HMSET counter:user:1 praiseCnt 100 hostCnt 200 //设置初始数据

    HINCRBY counter:user:user_id praiseCnt 1       //对某一field进行+1操作

    HGET counter:user:user_id praiseCnt            //取出某一用户的field数量

    此处使用的时候需要注意按照业务的需求去设置 key 的命名方式 或者 说是数据结构。

    否则需要使用 pipline 进行取值;

    但pipline是非原子性的操作,不太建议使用,对数据进行修改或者修改的时候使用


    

友情链接
联系方式
  • 邮箱 / E-mail:121388038@qq.com