首页广告的Redis实现

计划方案:使用redis的list数据类型存放需要展示的广告ID,hash数据类型存放广告详细信息。

这里写图片描述

  1. 每增加一条广告展示,在 列表“home:ad:list” 末尾使用 “RPUSH” 命令增加一个值(例如:ID值为5的广告,值为“ad:hash:5”)。同时使用 “HMSET ”命令存储一条 “hash ”类型的广告数据。
  2. 每删除一条广告信息,使用“ LREM”命令从列表“home:ad:list” 中删除对应的广告ID(例如:“ad:hash:5”),同时使用“DEL”命令删除本条广告对应的“hash”类型数据。
  3. 获取广告展示列表,先使用“LRANGE”命令从列表“home:ad:list”中获取广告ID集合(例如:LRANGE(“home:ad:list”, 0, 9))。循环遍历,使用“HGETALL”命令获取广告详细信息。

Redis与MySql性能测试:

Redis用时:25毫秒

MySql用时:2710毫秒

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在使用Redis实现token校验时,可以根据用户的使用情况动态调整token的过期时间。在生成token的同时,将创建token的时间戳存储在Redis中。每次请求被拦截器拦截并通过token验证成功后,将当前时间与存储在Redis中的token生成时间进行比较。如果当前时间距离创建时间快要到达设置的Redis过期时间,就重新设置token的过期时间,延长过期时间。如果用户在设置的Redis过期时间内没有进行任何操作(没有发请求),则token会在Redis中过期。具体的代码实现可以在Controller层生成token信息并存入Redis中,同时与用户登录态建立联系。生成token时,可以使用UUID生成唯一的token,并将token和用户登录态存入Redis中。设置token的过期时间,例如1小时。最后,将token返回给客户端。在拦截器中,通过获取客户端传过来的Authorization字段,尝试从Redis中获取对应的用户名。如果可以获取到用户名,则说明token正确;反之,说明token错误,返回鉴权失败。这样就实现了基于Redis的token校验。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [基于SpringBoot和Redis实现Token权限认证 & 基于redis实现token验证用户是否登陆](https://blog.csdn.net/weixin_38088772/article/details/111319039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值