redis实现订单支付(延时队列)

2022-09-06 11:20:40 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

在电商网站中,我们经常会遇到订单支付,退货时间问题,那么怎么去处理那?

  1. 设置定时任务,使用liunx中的at定时就可以轻松搞定,这里不在过多的研究
  2. 使用redis延时队列: redis有一个数据类型,Sset叫做可以排序的集合(有序集合),为什么会是有序的那,是因为它与set相比有个属性叫score,sset就是这个属性(字段)来排序的,那如何实现延时队列那?
    1. 实现方法:利用zset保存队列信息,score按照时间戳存放,再启动一个任务(线程),一直扫这个zset,判断当前时间和队列中的时间大小信息,如何时间戳大于等于当前时间,执行恢复库存等操作

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/135103.html原文链接:https://javaforall.cn

0 人点赞