旭旭同学
2017-06-12 16:12
因为没有看到老师的select语句中使用for update进行悲观锁锁定,所以在秒杀开启之后,大家一起秒杀的时候库存是怎么被锁定的?
我认为:感觉事务讲的那有点问题 mvcc不是等待另一条sql执行完 而是两条一起执行 如果第二条执行的后 发现手持的版本号<当前数据版本号 则会UpdateRow=0
追加:是否是因为InnoDB默认为ROW-LEVEL Lock ,在使用update语句时,where子句里面通过索引检索数据就会自动加行锁?
Java高并发秒杀API之业务分析与DAO层
87424 学习 · 496 问题
相似问题