用Redis给Java做优惠卷过期

先科补一下原理

1.我们是利用RedisSpring Data 来做

  虽然定时任务quartz框架也可以做

  主要嫌弃定时任务做太多刷数据

  服务器压力过大

2.Redis中自带发布/订阅者模式(publish/subscribe)

   主要是使用Redis中key的过期时间来做

   也就是环境配置好后

3. 用Java保存Redis  顺便设置key的时间

   用Java代码订阅Redis中的__keyevent@dbindex__:expired

    __keyevent@dbindex__:expired的主要作用是Redis中检测key到期时间的事件       

    大家都知道Redis默认16个库

    如果用的是0号库

    就检测__keyevent@0__:expired

     dbindex表示Redis库下标

     Java代码检测到指定的key过期

     然后再把数据库中key指定的数据刷新状态

4. 未写完,先贴出思路,后续会补全实际操作与代码

实际操作(mac)

1.安装homebrew(mac的安装神器,其他操作系统不需要安装)

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.开始下载redis(Windows系统直接去官网下载)

brew install redis 

3.下载好后,启动redis

redis-server  

4.在Redis目录中找到redis.conf修改配置文件

vim /usr/local/etc/redis.conf   

修改 daemonize nodaemonize yes 默认启动就后台运行

修改 requirepass foobared  requirepass 123456 修改默认密码

修改 notify-keyspace-events ""  notify-keyspace-events Ex  打开此配置,其中Ex表示键事件通知里面的key过期事件,每当有过期键被删除时,会发送通知

修改配置完,记得重启Redis

5. 测试redis

ping

set key1 123456

get key1

del key1

6. 测试订阅号 

未完成,后续会贴出Java代码

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值