前言
用户下单后,规定xx分钟后自动设置为“已过期”,不能再发起支付。项目类似此类”过期”的需求,笔者提供一种使用redis的解决思路,结合redis的订阅、发布和键空间通知机制(keyspace notifications)进行实现。
配置redis.confg
notify-keyspace-events选项默认是不启用,改为notify-keyspace-events “ex”。重启生效,索引位i的库,每当有过期的元素被删除时,向**频道发送通知。
e表示键事件通知,所有通知以为前缀;
x表示过期事件,每当有过期被删除时发送。
与springboot进行集成
①注册jedisconnectionfactory
②注册监听器
③配置订阅对象
paymentdatabase 库元素过期后就会跳入paymentlistener 的onmessage(message message, byte[] pattern)方法。
到此这篇关于redis实现订单自动过期功能的示例代码的文章就介绍到这了,更多相关redis 订单自动过期内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!