首页 > 其他 > 详细

Redis-05-事务和锁

时间:2020-09-19 17:58:39      阅读:49      评论:0      收藏:0      [点我收藏+]

1、事务

  • 事务性质:

    • 一次性

    • 顺序性

    • 排他性

    • Redis单条命令存在原子性,事务不存在原子性

    • Redis事务不存在隔离级别

  • 事务执行顺序:

    • 开启事务

      • multi

    • 命令入队

    • 执行事务

      • exec

    技术分享图片

  • 取消事务,事务队列中的命令都不会被执行

    • discard

    技术分享图片

  • 错误情况

    • 编译错误:命令出错,事务中的所有命令都不会被执行

    技术分享图片

    • 运行错误:命令存在语法性错误,错误命令抛出异常,其他命令正常执行

    技术分享图片

 

2、乐观锁

  • 悲观锁

    • 认为都会出问题,什么时候都加锁

  • 乐观锁

    • 认为什么时候都不会出问题,什么时候都不会加锁,更新时判断,是否有人操作数据

  • Redis实现乐观锁

    • 正常情况下,开启乐观锁监控执行成功

    技术分享图片

    • 在开启锁的情况下,改动监控的属性值,执行失败

    技术分享图片

    技术分享图片

    技术分享图片

    • 执行失败后,可以使用 unwatch 解除监控,再次执行操作

Redis-05-事务和锁

原文:https://www.cnblogs.com/LittleSkinny/p/13696866.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!