redis-事务 transaction
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis-事务 transaction相关的知识,希望对你有一定的参考价值。
redis的目标的是: 简洁,高效,由于事务本身就是一个很复杂的东西,所有我们不能把事务做的太复杂。。。
multi,exec
127.0.0.1:6379> multi
OK
127.0.0.1:6379> lpush fruits orange
QUEUED
127.0.0.1:6379> lpush fruits nut
QUEUED
127.0.0.1:6379> lpush fruits apple
QUEUED
127.0.0.1:6379> exec
1) (integer) 1
2) (integer) 2
3) (integer) 3
事务不支持回滚,目的是让redis足够简单,所以写代码的时候要非常注意
使用watch保护不想被multi改变的变量
127.0.0.1:6379> watch msg
OK
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set msg "2008 hello wolrd"
QUEUED
127.0.0.1:6379> exec
(nil)
127.0.0.1:6379> get msg
"12345" // 没有被改变
127.0.0.1:6379>
以上是关于redis-事务 transaction的主要内容,如果未能解决你的问题,请参考以下文章