php之redis乐观锁,秒杀抢购锁库存应用。
直接上代码
<?php // 连接Redis $redis = new Redis(); $redis->connect('127.0.0.1', 6379); // 初始化数据 $redis->set('count', 10); // 开始事务 $redis->watch('count'); $redis->multi(); // 这里写抢购逻辑,带上数据库事务 // 执行事务 $redis->exec(); if ($result === false) { // 数据已被其他进程修改,需要重新执行事务 // 回滚抢购逻辑数据库事务 } else { // redis事务执行成功 // 提交数据库抢购事务 } ?>