laravel中使用分布式锁来进行并发控制
`set($key, $value, $expireResolution = null, $expireTTL = null, $flag = null)`
```
参数一: $key 缓存键
参数二: $value 缓存值
参数三: $expireResolution EX/PX
EX 设置键key的过期时间,单位时秒(seconds)
PX 设置键key的过期时间,单位时毫秒(milliseconds)
参数四: $expireTTL 缓存键过期时间,单位由参数三决定
参数五: $flag NX/XX
NX 只有键key不存在的时候才会设置key的值
XX 只有键key存在的时候才会设置key的值
```
```
$processid = rand(1,10000).rand(1,10000);
$key = 'process_lock';
$value = 'process_'.$param['action_id'].'_'.$processid;
$lock = Redis::set($key, $value, 'ex', 3,'nx');
if($lock){
if(xxx){
self::delKey($key,$value);
throw new \Exception('exception');
}
xxx
self::delKey($key,$value);
}else{
throw new \Exception('exception');
}
```