商城系统订单超时自动取消解决方案

2021-12-17  本文已影响0人  不能吃的坚果j

功能说明

用户下单后 30 分钟如果没付款自动取消掉,然后释放库存,下面简单介绍订单超时自动取消的几种常用的方案。

1.定时轮询

最简单的方法,写好取消订单的逻辑,一般是取订单表待付款状态的订单,然后做遍历取消处理,使用Linux系统的crontab定时执行取消订单功能。

优点:简单快捷,业务小的可以考虑

缺点:

2.任务调度

一些web框架会带有任务调度的功能,像php的Laravel框架

优点:

缺点:跟定时轮询差不多

3.延迟队列处理

如果系统有太多的订单需要处理,那么处理的时间就要很长,假如第一次轮询还没结束,第二次又开始了,就会造成任务的重复执行,同时抑制占用数据库资源,造成数据库压力大,用延迟队列做取消订单处理,设定延迟时间为提交订单之后的30分钟执行,效率会高很多,常用的延时队列有

优点:

缺点:可能需要额外安装队列程序

上一篇 下一篇

猜你喜欢

热点阅读