面试题【Redis】


  • Redis事务支持原子性吗,支持回滚吗?

不保证原子性,失败不支持数据回滚

为什么redis不支持回滚呢,官方文档给出了说明,大意如下:

  1. redis命令失败只会发生在语法错误或数据类型错误的情况,这一结果都是由编程过程中的错误导致,这种情况应该在开发环境中检测出来,而不是生产环境
  2. 不使用回滚,能使redis内部设计更简单,速度更快
  3. 回滚不能避免编程逻辑中的错误,如果想要将一个键的值增加2却只增加了1,这种情况即使提供回滚也无法提供帮助