订单超时关单思路

提出问题:客户下单后由于各种原因没有完成支付,但是始终占着资源不释放,有些公司选择定时全表扫描订单表,关闭超时的订单,但是这样,势必会对数据库、应用及服务器造成不必要的开销,如何解决呢?

解决思路:1,因为订单表一般比较大,避免全表扫描,而且定时扫描不实时,建立针对订单的定时任务。

          2,生成订单时,在任务表中插入一条记录,主要包括订单号、创建时间、任务状态(1,成功  2,失败)、执行次数等字段。

          3,建立一个总的定时任务,定时去扫描订单任务表。发现超时的订单,根据订单号去关闭订单。

          4,定期清理任务表,比如:每月25号,定时清理上个月已经执行成功的任务。这样保证任务表不会很大,执行效率也比较高。

你可能感兴趣的:(订单超时关单思路)