//这个方法会多一次
public function testRedisList(){
$num = 10;
$user_id = uniqid();
//直接链接本地的redis
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$len = $redis->lLen('listUser');
if($len >= $num){
return "已经强光了";
}
$result = $redis->lPush("listUser", $user_id);
if($result){
return "恭喜您,强大熬了";
}
}
//初始化
public function testRedisListInit(){
$num = 10;
$user_id = uniqid();
//直接链接本地的redis
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$len = $redis->lLen('listUser');
$count = $num - $len;
for($i = 0; $i < $count; $i++){
$redis->lPush("listUser", 1);
}
}
//这个方法会多一次
public function testRedisListOk(){
$user_id = uniqid();
//直接链接本地的redis
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
//开始抢了
$leave = $redis->lPop("listUser");
if(!$leave){
return "已经强光了";
}
//每个抢成功多人,我把他的用户id存起来
$result = $redis->lPush("Users", $user_id);
if($result){
return "恭喜您,你成功了";
}
}
public function testRedisListDel(){
//直接链接本地的redis
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
//先删除
var_dump($redis->del("listUser"));
var_dump($redis->del("Users"));
}
public function testRedisListResult(){
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$len = $redis->lLen('listUser');
$usersCount = $redis->lLen('Users');
var_dump($len);
var_dump($usersCount);
}
总结:使用redis列表来做秒杀活动还是不错的