Redis 事务能保证什么?
查看完整题解
参考回答
直接回答
MULTI 后命令先排队,EXEC 时顺序执行,执行期间其他客户端命令不会插入。事务不会像关系库一样把已经执行的命令统一回滚。
讲清原理
入队阶段的语法错误可能让整组拒绝执行。EXEC 期间某条命令因为数据类型等原因失败,其他命令仍可能成功。WATCH 用于发生并发修改时放弃执行。
例子与易错点
批量更新多个键前先检查输入和类型。跨 Cluster 槽操作要满足服务器与客户端限制,数据库写入也不属于这笔 Redis 事务。
INCR 对文字报错,后面的 SET 仍会执行。
SET q18:value text
MULTI
INCR q18:value
SET q18:ok yes
EXEC
GET q18:ok
相关题 · 第 19 题、第 52 题
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。