事务序列里先插入数据还是先更新数据

1,801 阅读1分钟

从并发系统性能的角度考虑,应该先插入操作记录,再更新。

在InnoDB事务中,行锁是在需要的时候才加上, 等到事务结束(commit)的时候才释放

更新涉及到行锁的竞争,先插入再更新能最大程度地减少了更新操作持有的行锁时间,减少别的事务对于该更新事物的锁等待时间,提升了并发度。