redis分布式锁是在redis+lua脚本原子性判断库存充足了之后异步线程创建订单时的第二个保障,虽然 Redis + Lua 保证了库存的原子性,但是如果订单创建失败(例如数据库异常),库存已经减少了,这可能会导致实际库存与数据库库存不一致。 优化: 双写一致性保障:使用 事务消息(RocketMQ/RabbitMQ 的事务特性),先预减库存,再落库成功后确认库存扣减,否则回滚。