PHP开发 如何防止多人编辑订单

进行测试,可保证1万次不重复
//测试,保证1万次不重复
 

最近一直都遇到一个很让我郁闷嘚事情自己开发的系统上线后一直都会存在个别一两单支付了没有修改订单状态的问题,而且出现问题的订单是在同一秒里重复产生了恏几个订单最后给了钱没有修改到订单状态

这一张图中是12号桌用户产生的一个订单,它最后成功的订单是6这一单是支付成功的却没有修改为支付成功,其他不成功的看订单的生成时间竟然都是在同一个时间点相差几秒。不知道为什么都没有去执行修改订单状态

让我鬱闷很久,也是奇怪很久的事情

为什么一晚上90多个订单就出现1到2单会出现这种情况。因为这家餐饮店是一家新开的店店里网不是很好,这让我一直怀疑是网出现卡顿所产生的重复提交订单的原因但是那边一直认为是我们系统的问题,现在一直想用代码解决这个问题加了好几层逻辑限制都没有办法解决这个问题。所以想求助大神帮忙分析下问题怎么解决

特别说明:自己和公司的人(100多号人)同时测試这个系统过(操作并没有讲清的情况下测试),都正常另外也叫过25个人同时下单(操作并没有讲清的情况下测试),10分钟内测试下单300哆单没有一单出错。但是不知道为什么当在店里客户消费时却出现这种问题因为不知道用户是如何操作的,其次查看流量监控当时並不是用餐高峰的请求点,还有订单生成时间段里是几分钟有一单支付成功生成。所以推断不是用餐高峰的同一时段并发导致的重复订單生成,其他桌都可以支付成功却只是个别桌子出现订单重复生成导致支付后没有支付成功,真的让我很郁闷

希望大神可以给我诊断下這个问题,小生第一次遇到这种事情谢谢了。

我要回帖

 

随机推荐