【发布时间】:2019-05-01 21:21:07
【问题描述】:
售票公司如何保证不再售票?
例如,您有 40 个可用并已售出 39 个,同时有 2 个人开始购买,两个人都会有该票可用的信息,但是一旦一个人完成购买,另一个人仍然有有票的虚假信息,购买不会被阻止。
如何解决?
【问题讨论】:
-
这是典型的race condition problem 有一些技术例如database locks。这取决于你的环境
-
事务处理
-
当第 1 个人按下购买按钮时,即使销售尚未完成,门票也会被标记为已售出。如果第 2 个人按购买,她会发现它已经售出。如果第 1 个人没有在设定的时间内完成购买,则删除 Sold 标志并取消购买。
-
我投票结束这个问题,因为它与编程无关
标签: c# mysql .net-core entity-framework-core e-commerce