redis秒殺商品隊列

$user_id=session('user_id');
         header("Content-type:text/html;charset=utf-8");
         $redis = new \Redis();
         $redis -> connect('127.0.0.1',6379);
         //$redis -> set('test1',"10");   //搶購商品有10件
         $incr=$redis -> INCR("page_view");   //自增  可以用來做頁面訪問量
         echo "當前訪問量爲$incr";echo "</br>";
         //判斷搶購商品是否被搶購完
         if($redis -> get('test1')<=0)
         {
             echo "完事了";
         }else
         {
             $redis -> LPUSH('user_ok',$user_id);   //將搶購成功的用戶存入隊列中
             $userinfo=$redis -> LRANGE('user_ok',0,10);   //取出隊列中的前十位作爲搶購成功的人  其實在這裏也就是取出人數
             //搶購一個商品減去一個
             echo "還剩餘".$redis->decr('test1');
             echo "</br>";
             foreach ($userinfo as $k => $v)
             {
                 //防止一個用戶多次搶購
                 if($v==$user_id)
                 {
                     echo "您已經搶購成功了";die;
                 }
                 
             }

         }

進行壓力測試


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章