运行时错误,不会影响到成功的命令执行结果,不会回滚
对字符串进行累加,属于运行时错误,可以去到k2,只有第一行命令错误,不会影响其他的
?...监视(实现乐观锁)
悲观锁
很悲观,认为什么时候都会出问题,无论做什么都加锁
乐观锁
很乐观,认为什么时候都不会出现问题,所以不会加锁,更新数据的时候,判断一下,在此期间是否有人改动过数据
获取version...更新时比较version
watch key[key循环]
事物正常结束,数据期间没有发生变动,这个时候就正常执行成功(就是看你的钱,在你花的期间,有没有人动过)
一但事物执行成功监控就会取消
?...经过测试发现,不会存在ABA问题
取消监视
unwatch
取消全部的监视
经过测试多个进程取消监视不会影响其他已开启事物的监视
A线程
?
B线程
?
A线程
?...返回结果为空,所以监视并没有被取消
Redis事物详解(来自小姐姐的面试题71)
A原子性:命令要么一起执行,要么一起不执行,没有mysql的rollback
C一致性:执行到一半可恢复
I持久性:RDB