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