没有合适的资源?快使用搜索试试~ 我知道了~
redis中的事务操作案例分析
0 下载量 162 浏览量
2020-12-16
15:54:41
上传
评论
收藏 85KB PDF 举报
温馨提示
试读
2页
本文实例讲述了redis中的事务操作。分享给大家供大家参考,具体如下: redis与mysql的事务 Redis支持简单的事务 简单使用 讲张三的100圆钱转账给lisi: set zhangsan 800 set lisi 100 multi decrby zhangsan 100 incrby lisi 100 exec 失败的两种情况 在mutil后面的语句中, 语句出错可能有2种情况,还是以转账的情况来分析: (1)语法就有问题 127.0.0.1:6379> multi OK 127.0.0.1:6379> decrby zhang 100 QUEUED 127.0.0.1:
资源详情
资源评论
资源推荐
redis中的事务操作案例分析中的事务操作案例分析
本文实例讲述了redis中的事务操作。分享给大家供大家参考,具体如下:
redis与与mysql的事务的事务
Redis支持简单的事务
简单使用简单使用
讲张三的100圆钱转账给lisi:
set zhangsan 800
set lisi 100
multi
decrby zhangsan 100
incrby lisi 100
exec
失败的两种情况失败的两种情况
在mutil后面的语句中, 语句出错可能有2种情况,还是以转账的情况来分析:
(1)语法就有问题
127.0.0.1:6379> multi
OK
127.0.0.1:6379> decrby zhang 100
QUEUED
127.0.0.1:6379> hasdfasdf
(error) ERR unknown command 'hasdfasdf'
127.0.0.1:6379> exec
(error) EXECABORT Transaction discarded because of previous errors.
127.0.0.1:6379> mget zhang wang
1) "800"
2) "100"
这种,exec时,报错, 所有语句得不到执行,所以还是800和100圆
(2)语法本身没错,但适用对象有问题
127.0.0.1:6379> multi
OK
127.0.0.1:6379> decrby zhang 100
QUEUED
127.0.0.1:6379> sadd wang 1
QUEUED
127.0.0.1:6379> exec
1) (integer) 700
2) (error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> mget zhang wang
1) "700"
2) "100"
Exec之后,会执行正确的语句,并跳过有不适当的语句,所以这里是一个700圆一个100圆了
案例案例
假设买票案例,当前只有1张票和100块钱,如果我在买票的过程中,在我multi之后,和exec之前,票被别人买了—即ticket已
经变成0了,然后我们执行exec的时候就会将票变为-1,这就不对了。
weixin_38709379
- 粉丝: 2
- 资源: 954
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0