009redis的事务(transaction)
来源:互联网 发布:unity3d缓存清理 编辑:程序博客网 时间:2024/04/29 14:20
1、redis中的事务是一组命令的集合。事务同命令一样都是redis的最小执行单元。一组事务中的命令要么都执行,要么都不执行。(例如:转账)
2、原理:先将属于一个事务的命令发送给redis进行缓存,最后再让redis依次执行这些命令。
3、应用场景
一组命令必须同时都执行,或者都不执行。
我们想要保证一组命令在执行的过程之中不被其它命令插入。
4、命令
multi 事务开始
.....
exec 事务结束,开始执行事务中的命令
discard 放弃事务
5、错误处理
1:语法错误:致命的错误,事务中的所有命令都不会执行
2:运行错误:不会影响事务中其他命令的执行
6、Redis 不支持回滚(roll back)
正因为redis不支持回滚功能,才使得redis在事务上可以保持简洁和快速。
7、java代码手工实现incr递增命令
8、watch命令
作用:监控一个或者多个键,当被监控的键值被修改后阻止之后的一个事务的执行。
但是不能保证其它客户端不修改这一键值,所以我们需要在事务执行失败后重新执行事务中的命令。
注意:执行完事务的exec命令之后,watch就会取消对所有键值的监控
9、unwatch:取消监控
2、原理:先将属于一个事务的命令发送给redis进行缓存,最后再让redis依次执行这些命令。
3、应用场景
一组命令必须同时都执行,或者都不执行。
我们想要保证一组命令在执行的过程之中不被其它命令插入。
4、命令
multi 事务开始
.....
exec 事务结束,开始执行事务中的命令
discard 放弃事务
5、错误处理
1:语法错误:致命的错误,事务中的所有命令都不会执行
2:运行错误:不会影响事务中其他命令的执行
6、Redis 不支持回滚(roll back)
正因为redis不支持回滚功能,才使得redis在事务上可以保持简洁和快速。
7、java代码手工实现incr递增命令
8、watch命令
作用:监控一个或者多个键,当被监控的键值被修改后阻止之后的一个事务的执行。
但是不能保证其它客户端不修改这一键值,所以我们需要在事务执行失败后重新执行事务中的命令。
注意:执行完事务的exec命令之后,watch就会取消对所有键值的监控
9、unwatch:取消监控
0 0
- 009redis的事务(transaction)
- Redis事务(transaction)
- redis中事务(Transaction)的使用
- redis的事务(transaction)详解
- (十二)redis 事务(transaction)
- Redis命令学习-Transaction(事务)
- NoSQL之Redis---事务(transaction)命令
- Redis--transaction(事务)
- 事务(Transaction)的特性
- 事务(Transaction)的特性
- 事务(Transaction)的特性
- 事务(Transaction)的理解
- 事务(Transaction)的理解
- 数据库的事务(transaction)
- [事务] -- 事务(Transaction)
- NoSQL之Redis---事务(transaction)Java实现
- redis源码分析之事务Transaction(上)
- redis源码分析之事务Transaction(下)
- 为什么AsyncTask使用了一次,就不能再用了?
- 【二】 Chrome的进程间通信
- 微信支付V3版开发中遇到的一个问题及原因:缺少prepay_id
- 学而不玩则呆
- 万能的Java WebService调用程序支持C# JAVA WS调用
- 009redis的事务(transaction)
- iOS7 新特性 edgesForExtendedLayout
- 目标跟踪之粒子滤波
- windows storm安装及本地模式执行
- 博弈入门
- 010redis中数据的排序(sort)
- 问题记录.
- codepath教程:浮动操作按钮详解
- 获取设备信息以及APP版本