«

php redis锁防止并发

时间:2024-2-15 09:46     作者:韩俊     分类: Mysql


工作间隙写了个redis防并发的锁示例,以备以后参考,前面写过利用文件锁防并发的代码,但考虑到效率以及分布式系统,文件锁会有弊端,而这种情况下redis则没有问题。

<?php
$redis=new Redis;
$redis->connect('127.0.0.1',6379);
$userid='23';
$articleid='126';
//开始加锁
$key=md5($userid.$articleid);
//设置不可重复
$result=$redis->setnx($key,'1',5);
if(!$result){
    echo '您访问太频繁了,请稍后访问!';
    $redis->delete($key);
    exit;
}

/*
 * 正常业务逻辑
 */

$redis->delete($key);

标签: mysql

热门推荐