项目日志:关于倒计时结束删除订单的操作的优化

优化前:

在订单页面,会加载一个函数,先生成一条订单,在插入新订单成功后,我去数据库交互,获取当前goods表的最大id,作为当前插入订单的id。

这样做的缺点:

  1. 虽然在大部分情况下,maxId和真实的新订单Id是相同的,但是一旦并发量足够大,就会出现:最大id与当前用户的生成的订单的id不相同,从而导致,在倒计时结束时,删除错订单。

  2. 再去获取maxId增加了数据库的操作,一定程度上加大了出错率。


优化的做法:

使用account和buyTime作为检索条件,

buyTime是1970年来目前的秒数,有一定程度上唯一性,再加上用户的手机号,已经是完全唯一性。

因为(在我的项目中)同一个用户是不可能在同一秒内进行两次操作。

而且,很好地解决了上面的两个缺点。



转载于:https://my.oschina.net/u/2487410/blog/652015

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值