Redis之事务

2018-10-07  本文已影响0人  煮茶boy

简单的说,事务表示一组动作,要么全部执行,要么全部不执行,避免出现数据不一致的情况.

>>>multi
>>>sadd user:a:follow user:b
>>>sadd user:a:follow user:b
>>>exec
2.jpg

如果是语法错误(命令写错等),则会导致整个事务都不执行.

如果是运行时错误,则会导致发生错误之前的代码都会执行,报错的代码和后面的代码不会执行,Redis不支持回滚操作.

>>>set test "hello"
>>>watch test
>>>multi
>>>append test "python"
>>>append test "redis-py"
>>>set test "moon"       -- 这条命令来自另外一个客户端
>>>exec
(nil)      -- 因为key "test"的值被另外一个客户端改变(watch命令之后,exec命令之前),所以事务不执行.
上一篇下一篇

猜你喜欢

热点阅读