摘要
Java实现自动取消订单
这个功能我实际经验,某医药电商平台的订单管理系统,下单45分钟付款,否者取消。
方式一:
- quartz,每几分钟执行一次(根据订单处理速度,和订单生成情况)。
- 每次指定其中的更新条数,例如前1000条。
- 这种方式的确会影响性能,所以要是系统订单比较多,推荐独立的定时服务器。
方式二:
采用2种方式混合来处理,节省资源,保证结果的完全准确性。
- 采用主动触发的方式来取消订单。
订单的表里面,再加入有效时间字段,如果查询的时候,如果订单为已下单未处理状态,查询有效字段,如果该字段的值少于当前时间,说明订单是有效的,可以对订单进行下一步的操作,如果该字段的值大于当前时间,直接更新订单状态为取消。 - 每天凌晨定时处理(一条sql语句搞定),批量修改状态无效的订单。
总结
以上就是Java实现自动取消订单的2种解决方法,仅供参考。