基于数据库实现分布式锁

 实现原理

  1. 多个进程、多个线程访问共同组件数据库.
  2. 通过selec.....for update访问同一条数据
  3. for update锁定数据,其他线程只能等待

实现步骤 

此时只有一个操作可以对数据进行修改,而其他人不能够对该数据进行修改操作,但可以查看

SELECT * FROM distribute_ lock WHERE business code='demo' FOR UPDATE;
COMMIT;

 优缺点

优点:简单方便、易于理解、易于操作
缺点:并发量大时,对数据库压力较大
建议:作为锁的数据库与业务数据库分开
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章