ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

redis 事务(悲观锁和乐观锁)

2019-11-18 18:57:45  阅读:462  来源: 互联网

标签:事务 EXEC redis 回滚 乐观 命令 悲观 DISCARD


MUTI

  开启事务,后续的命令会被加入到同一个事务中

  事务中的操作会发送给客服端,但是不会立即执行,而是将操作放到了该事务对应的一个队列中,服务端返回QUEQUD

 

EXEC

  执行EXEC后,事务中的命令才会执行

  事务中的命令出错时,不会回滚也不会停止,而是继续执行下一步操作

 

DISCARD

  取消事务,事务队列会被清空

 

原子性:不支持,不会回滚,

隔离性:支持,事务中的命令顺序,不会被打断

持久性:不支持

一致性:不支持,要求通过乐观锁watch来实现

 

乐观锁:watch

  redis实现乐观锁机制

  机制:开启事务前,设置对数据的监听,EXEXC时,如果发生数据发生过修改,事务会自动取消(DISCARD)

  事务EXEC后,无论成败,监听会被移除

示例代码:

 

悲观锁:

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

标签:事务,EXEC,redis,回滚,乐观,命令,悲观,DISCARD
来源: https://www.cnblogs.com/wjun0/p/11884240.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有