悲观锁和乐观锁详解
2017-12-17 21:52 taozsay 阅读(550) 评论(0) 编辑 收藏 举报公众号里有篇文章讲悲观锁和乐观锁小白科普:悲观锁和乐观锁,非常通俗易懂,在这里总结下自己的理解。
悲观锁:每次读写的时候讲数据加锁,不让别人访问,直到自己用完后释放。
缺点:是如果持有锁的时间太长,其他用户需要等待很长时间。
乐观锁:加一个版本(version)字段,每次讲版本读出,修改数据的时候对比下版本号是否一样。如果不一样放弃这次操作,重新读取再操作。
缺点:这种方式适合于冲突不多的场景,如果冲突很多,数据争用激烈,会导致不断地尝试,反而降低了性能,尤其是在高并发情况下大家都疯狂争抢,效率会很低。
简单来说悲观锁阻止读取,乐观锁阻止提交。
作者:taoz
出处:www.cnblogs.com/bigbrid
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
本文如对您有帮助,还请多帮 【推荐】 下此文。
如果喜欢我的文章,请关注我的公众号