为什么Redis的操作是原子性的,怎么保证原子性的? 对于Redis而言,命令的原子性指的是: 一个操作的不可以再分,操作要么执行,要么不执行。 Redis的操作之所以是原子性的,是因为Redis是单线程的。 Redis本身提供的所有API都是原子操作, Redis中的事务其实是要保证批量操作的原子性。 多个命令在并发中也是原子性的吗? 不一定, 将get和set改成单命令操作,incr 。 使用Redis的事务,或者使用Redis+Lua==的方式实现