redis常见使用场景

文章的点赞

  • 如果文章很火爆,点赞比较多,就会频繁的更新数据库,那么会对数据库造成比较大的压力,于是想到可以用redis来减少数据库压力,具体思路如下:
  • 思路: 使用redis中的有序集合,以文章id为值,以点赞数为权值,然后定时将点赞数更新到mysql中

  • 为了防止用户重复点赞,可以将该文章已点赞用户存入一个集合中

 登录token(jwt,jwt本身自带过期时间)

  • 用户注册之后,将token存入mysql,同时将token存入redis,以下采用两种数据存储方式
    • 字符串,以用户id为键,以token为值,同时设置expiretime
    • hash,这种方式可以更方便的存取用户信息,记录用户信息方便以后分析
    • 此外,还可以用有序集合还限制最大会话数

使用redis实现购物车

  • hash保存购物车数据,集合保存勾选数据

抢购,促销,新闻热点数据

  • 可以使用定时任务定期从数据库取出需要的数据,以json字符串的形式写入redis

redis实现网站计数器

  • 可以使用有序集合的形式,以一定时间间隔为值(比如1min,5min,1hour,或者使用操作+时间间隔为值),以记录的数值为权值,就可以记录不同间隔时间内用户某些操作的次数,来实现数据统计

redis实现自动补全

redis 实现分布式锁

计数信号量

任务队列

消息发布与订阅

使用redis进行文件分发

未完待续。。。。

 

posted @ 2020-04-10 12:09  鱼虫光  阅读(356)  评论(0编辑  收藏  举报