redis事务使用案例分享


当前第2页 返回上一页

7c4b36096c93fd6f7df02c1fbc43f60.png

(4)若在事务队列中存在语法性错误(类似于java的1/0的运行时异常),则执行EXEC命令时,其他正确命令会被执行,错误命令抛出异常。

d784e4954fd98684cbdc33d3c98bd3c.png

(5)使用watch

案例一:使用watch检测balance,事务期间balance数据未变动,事务执行成功

f29a959be741cac13b5bb1b6fbf6c80.png

案例二:使用watch检测balance,在开启事务后(标注1处),在新窗口执行标注2中的操作,更改balance的值,模拟其他客户端在事务执行期间更改watch监控的数据,然后再执行标注1后命令,执行EXEC后,事务未成功执行。

7784d0a9248b3fe4e4282e4fab40675.png

一但执行 EXEC 开启事务的执行后,无论事务使用执行成功, WARCH 对变量的监控都将被取消。

故当事务执行失败后,需重新执行WATCH命令对变量进行监控,并开启新的事务进行操作。

总结:

  watch指令类似于乐观锁,在事务提交时,如果watch监控的多个KEY中任何KEY的值已经被其他客户端更改,则使用EXEC执行事务时,事务队列将不会被执行,同时返回Nullmulti-bulk应答以通知调用者事务执行失败。

相关推荐:redis数据库教程

以上就是redis事务使用案例分享的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

黑马云课堂nosql之Redis技术视频源码课件分享

Redis安装大全涵盖windows、linux、docker

Redis字符串类型的几种应用

Redis实现高并发计数

Redis和mysql一般怎么配合

为什么说Redis是单线程的

Redis server是什么

如何配置Redis外网可访问并只允许指定的ip可访问Redis

什么情况下使用Redis缓存

关于java基于Redis有序集合实现排行榜

更多相关阅读请进入《Redis》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...