超过一定时间未处理订单自动取消 , 使用定时任务每天处理吗?

您的好友 发布于 2016/01/03 17:40
阅读 6K+
收藏 0

如何实现  超过3天未处理订单自动取消 这个功能, 

只能使用定时任务每天处理这些过期订单吗?

虽然是自动取消订单  但是实际处理过程和用户自己取消是一样的吧 

加载中
1
Storm-Cai
Storm-Cai
使用时间轮 + 槽。 每个订单生成时间 放到相应的槽内,比如一天24小时对应24个槽。时间轮每转动一个小时,就取出相应的槽里面的订单,将过期的订单处理掉。如果完成的订单则从槽内移除。我们是精确到分钟级别。(就是60个槽,每个槽都是一个队列。每产生一个订单将订单放入到时间对应的槽内,如果处理完毕就从槽内移除。未处理的订单,到期后,根据订单情况确定是人工操作还是取消订单。后来衍生出来了订单处理系统。)
1
sxgkwei
sxgkwei

一个存储过程搞定,能数据库直接搞定的事情,就不要写外部程序代码,外部容器启动定时任务来搞。存储过程直接挂在数据库定时器上搞,高效简单。

还有,尽量别删数据,就给状态切换到无效订单就行了。因为就算是没支付的订单,也有分析学上的意义,可以拿来猜用户喜欢,给用户推荐,计算用户购物倾向。

0
p2ng
p2ng
这个应该是订单的状态吧?为什么要处理,多参考成熟的电商订单系统...
您的好友
您的好友
用户如果下了单之后长时间不支付 当然要把订单进行处理啊 自动取消 然后释放商品啊
0
muyu
muyu
是的,我认为是的
0
inuxor
inuxor
这个需求我一直没想到更好的办法。主要是没有一个被动触发的节点
0
java9
java9
我目前用的quartz,一段时间之后触发。
0
迷茫的中年IT狗
迷茫的中年IT狗
淘宝的购物车放很长时间也不会取消啊
酷酷的就
酷酷的就
回复 @腾讯公告 : jd是24小时, 过期不候的
迷茫的中年IT狗
迷茫的中年IT狗
回复 @zp-wmhx : 订单不付款貌似很长时间还在,除非商品给下架了
一号男嘉宾
一号男嘉宾
购物车和订单是两码事。
酷酷的就
酷酷的就
人家说的是订单, 不是购物车.
0
上水若寒
上水若寒
要这么复杂么 ?   生成订单的时候 设定一个过期时间,未处理前检查是过期就行啊。
p
profileCaren
不行的,这样没办法释放库存。
0
Gillian_Male
Gillian_Male
采用延迟队列和定时任务结合的方式去做即可。生成订单时就加入延迟队列,到时候检查是否支付,未支付则做一些回滚操作,定时任务是防止延迟队列失效。
返回顶部
顶部