电商类微信小程序,库存不超卖实现

缘起

由于项目中需要实现一个买卖平台的微信小程序,实现过程中,发现控制库存不超卖是一个非常有意思的事情。

已获知的情报

库存超卖经常由于并发时有脏读情况,通常实现库存不超卖通过加锁方式实现

1.乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。乐观锁不能解决脏读的问题。

2.悲观锁:指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态

锁通常不能使用数据库的锁,应该使用缓存,在有人操作之前加一个互斥变量,当这个变量没有释放,而另一个人申请访问时,读到缓存中有这个互斥变量,应直接返回,我的项目中并没有很大的并发量,所以直接使用了数据库中的值

此外库存减扣操作,如果在并发量比较大时&

你可能感兴趣的:(后端开发)