在实现订单取消的时候需要考虑到订单倒计时,此时就得使用redis监听订单取消,设置如下:

config set notify-keyspace-events Ex

这一步确保redis能够监听到过期的key,Ex也就是过期的意思。

127.0.0.1:6379> subscribe __keyevent@0__:expired
//订阅该频道
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "__keyevent@0__:expired"
3) (integer) 1

要说一下:__keyevent@0__这里的0是第几个数据库,如果监听的是第二个数据库就改为1。
接下来就在另一个控制台设置会过期的key

127.0.0.1:6379> setex ed 5 us
OK

5秒后就可以看到发布在频道里的过期的key:

127.0.0.1:6379> subscribe __keyevent@0__:expired
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "__keyevent@0__:expired"
3) (integer) 1
1) "message"
2) "__keyevent@0__:expired"
3) "ed"
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐