hello,这里是东哥。这节课,我们要学习的是,「长乐未央全栈系列:Node.js 项目实践」课程的第 73 回,进阶:数据库的悲观锁,在这节课里,我们将探讨:
- 数据库的悲观锁是什么?
- 共享锁与排它锁又是什么?
- 如何在 Node 项目中实现悲观锁?
- 课外阅读:数据库的隔离级别
悲观锁实践
上节课我们学习了乐观锁,这种方法是依靠自己写的代码逻辑实现的。其实为了处理并发问题,数据库自己就可以加锁。
悲观锁是什么?
数据库里加的锁,与乐观锁
相对应,我们可以叫它悲观锁
。
听到悲观锁这个名字,大家不要觉得这是一个悲伤的故事。其实悲观锁,并不悲伤。它只是非常小心谨慎,它认为数据随时都有可能被别人修改。所以,只要在操作数据之前,它就先把数据给锁起来。
共享锁与排它锁
悲观锁里,又分为共享锁
和排它锁
共享锁实践
共享锁
,就是大家共享的。一个资源,允许同时存在多个共享锁。每个事务,都可以读到这条记录。但是要想修改、删除,必须等其他共...