前提:是这样的,一笔订单下单之后,如果不支付,会处于待支付状态。而一般这个订单会有类似 30 分钟不支付自动取消订单的功能。
实现:这种功能的实现,可以通过定时任务,每隔 30 秒或一分钟扫描一次。但如果集群环境下,可能定时任务会执行重复。当然我们可以通过类似操作系统 PV 操作限制同一时段只能一个定时任务执行。
目标:我想知道,这种情况,除了定时任务,还有没有其他好点的实现?
想法:目前在领导的提醒下,想到了用消息来处理,下完单后延时 30 分钟发送消息来处理,不知还有没有其他的处理方式,多谢大家,请多多指教。