在实现订单取消的时候需要考虑到订单倒计时,此时就得使用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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐