当前位置:首页 > 后端

php之redis乐观锁,秒杀抢购锁库存应用。

Z先生2年前 (2024-07-28)后端799

直接上代码

<?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事务执行成功
    // 提交数据库抢购事务
}
?>


分享给朋友:

相关文章

php获取文件mime的方法,相对完整,并且已经测试

已经经过测试也相对完整,优先自带类和方法,如果自带类或者方法没有开启的情况下,通过文件扩展名实现,文件扩展名关联了176种如果实在没有开启相关组件也没有匹配到,那么就返回:application/oc…

【转】Swoole和Workerman到底选谁?

【转】Swoole和Workerman到底选谁?

Swoole:面向生产环境的 PHP 异步网络通信引擎       使 PHP 开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTT…

php array_column函数封装

array_column函数只支持php5.5.0以上版本,所以这里要封装下,这样可以兼容用法if (!function_exists("array_column"))&…

Composer的初步使用以及Composer切换国内源(阿里云)

Composer安装(Windows系统)下载:https://getcomposer.org/Composer-Setup.exe一步步安装即可。需要注意的是你需要开启 openssl 配置,我们打…

困扰了很久的PHP跨域问题

其实这个问题一直是不存在的,只是自己因为各种配置吧,导致了这个问题一直没有解决。现在就解决思路提供如下: 1、php端,主要是Access-Control-Allow-Headers选项……

ThinkPHP6多应用下配置短路由 - TP6路由

ThinkPHP6多应用下配置短路由 - TP6路由

需要实现的效果: http://xx.com/u/RkdJ80 =˃ http://xx.com/home/url/url/index 实现步骤 1. 设置tp6隐藏网址的index…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。