redis实现mysql锁的方法详解数据库

redis实现mysql锁的方法

 
 
        $config = array( 
            'host'           => 'localhost', 
            'port'           => 6379, 
            'index'          => 0, 
            'auth'           => '3213', 
            'timeout'        => 1, 
            'reserved'       => null, 
            'retry_interval' => 100, 
        ); 
 
        $redislock = new /redislock($config); 
 
        $key = 'fwefwe'; 
        while (1) { 
         
            $is_lock = $redislock->lock($key, 2); 
 
            //如果已经抢占锁了 可以继续往下执行 
            if ($is_lock) { 
                break; 
            } 
            usleep(500000); 
 
        } 
 
        $data = array('info1' => '啦2啦', 'info2' => '啦啦啦22啦啦啦'); 
        $isok = $this->commoninsertinfo($data, 'mobantestinfo1'); 
        $redislock->unlock($key); 
        echo '执行成功'; 
        exit(); 

  不用担心mysql出现死锁 缓存穿透也可以采取这个方案 只保证1个执行

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/4020.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论