Redis事务回滚

Vis*_*hnu 4 redis hiredis

我是redis的新手.我有一个应用程序,其中有多个redis命令进行事务.如果其中一个失败,redis会像关系数据库那样回滚事务吗?用户是否有责任回滚事务?

Gop*_*h.R 5

Redis不像关系数据库那样回滚事务.

如果您有关系数据库背景,Redis命令在事务期间可能会失败,但仍然Redis将执行事务的其余部分而不是回滚,这可能看起来很奇怪.

但是对于这种行为有很好的意见:

  • 只有在使用错误的语法调用时才会失败Redis命令(并且在命令排队期间无法检测到问题),或者对于持有错误数据类型的键,Redis命令可能会失败:这意味着实际上失败的命令是编程错误的结果,以及在开发过程中很可能检测到的一种错误,而不是在生产中.

  • Redis内部简化且速度更快,因为它不需要回滚的能力.

检查出来Why redis does not support rollback transactions的文件和来自这里.


Bis*_*ath 1

文档在这里。Redis不支持回滚。