电商中应该使用秒还是毫秒

看了淘宝的双11,我们这些码畜简直自愧不如,可是程序员这条道路还是得继续啊,还是需要努力学习,所以还是慢慢记录自己做电商中遇到的问题吧。

由于最近在最近的秒杀活动中,发现几个整点订单(活动是整点开始的,即1秒内就生成了订单,显然不是手动的),但是,整点订单不是活动价,而是商品原价,这有点奇怪了。

背景:

电商秒杀活动,整点开始。当然,没有做验证码机制,仅仅采用了阀门过滤。

使用的一个PHP框架,活动商品即为正常商品,没有单独做活动销售系统。

购物流程为:

活动商品--》购买--》确认订单--》生成订单

处理逻辑:

A判断活动是否开始--》B开始--》C进入购买流程--》D计算订单价格--》E生成订单

问题:

整点订单是原价,按理说应该是活动价才对

解决问题:

经过一番盘查,问题出在“D计算订单价格”环节,计算订单价格的时候,查询活动及活动价格的时候使用的是大于,而不是大于等于。将查询修改为大于等于,问题解决了。

问题思考:

当然,问题解决了,只是由于疏忽逻辑不严谨,这是一个框架遗留问题,在平时都没有发现(直到有人通过程序来参加活动就暴露出来了)。

可是,我发现里面用的时间是精确到秒(time()),精确到秒的话,必然要使用大于等于">=",但是如果是精确到毫秒(microtime())乃?,那使用大于">"不就没有问题了吗?

那到底是应该精确到秒?还是精确到毫秒乃?

经过一番百度谷歌,没有找到相关答案(可能搜索方式不对)。

和同事简单讨论后,感觉使用毫秒会更好,比如活动时间比对,生成订单时间,这样很记录更清楚,而且不容易犯下逻辑不严谨的错误。

总结:

以后在这样的情况,会使用毫秒。

希望这方面的大神能告诉我在你们的电商或者类似功能中应该使用秒还是毫秒?还是逻辑正确,就无所谓?



转载于:https://my.oschina.net/kenblog/blog/530356

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值