![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
锁
wyc0725
这个作者很懒,什么都没留下…
展开
-
Redis锁
*redis分布式锁的实现(Redis) 分布式锁实现的关键是在分布式的应用服务器外,搭建一个存储服务器,存储锁信息,这时候我们很容易就想到了Redis。首先我们要搭建一个Redis服务器,用Redis服务器来存储锁信息。 在实现的时候要注意的几个关键点: 1、锁信息必须是会过期超时的,不能让一个线程长期占有一个锁而导致死锁; 2、同一时刻只能有一个线程获取到锁。 几个要用到的redis命令: setnx(key, value):“set if not exits”,若该key-value不存在,则成功加原创 2020-12-14 10:01:07 · 98 阅读 · 0 评论 -
乐观锁,悲观锁
一、悲观锁 1、排它锁,当事务在操作数据时把这部分数据进行锁定,直到操作完毕后再解锁,其他事务操作才可操作该部分数据。这将防止其他进程读取或修改表中的数据。 2、实现:大多数情况下依靠数据库的锁机制实现 一般使用 select ...for update 对所选择的数据进行加锁处理,例如select * from account where name=”Max” for update, 这条sql 语句锁定了account 表中所有符合检索条件(name=”Max”)的记录。本次事务提交之前(事务提交时会原创 2020-12-14 09:54:04 · 69 阅读 · 0 评论