最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis使用watch完成秒殺搶購功能的代碼

 更新時間:2018年05月07日 10:41:00   作者:e421083458  
這篇文章主要介紹了Redis使用watch完成秒殺搶購功能的代碼,具有很好的參考價值,希望對大家有所幫助,一起跟隨小編過來看看吧

redis使用watch完成秒殺搶購功能:

使用redis中兩個key完成秒殺搶購功能,mywatchkey用于存儲搶購數(shù)量和mywatchlist用戶存儲搶購列表。

它的優(yōu)點(diǎn)如下:

1. 首先選用內(nèi)存數(shù)據(jù)庫來搶購速度極快。

2. 速度快并發(fā)自然沒不是問題。

3. 使用悲觀鎖,會迅速增加系統(tǒng)資源。

4. 比隊(duì)列強(qiáng)的多,隊(duì)列會使你的內(nèi)存數(shù)據(jù)庫資源瞬間爆棚。

5. 使用樂觀鎖,達(dá)到綜合需求。

我覺得以下代碼肯定是你想要的。

<?php 
header("content-type:text/html;charset=utf-8"); 
$redis = new redis(); 
$result = $redis->connect('10.10.10.119', 6379); 
$mywatchkey = $redis->get("mywatchkey"); 
$rob_total = 100;  //搶購數(shù)量 
if($mywatchkey<$rob_total){ 
  $redis->watch("mywatchkey"); 
  $redis->multi(); 
  //設(shè)置延遲,方便測試效果。 
  sleep(5); 
  //插入搶購數(shù)據(jù) 
  $redis->hSet("mywatchlist","user_id_".mt_rand(1, 9999),time()); 
  $redis->set("mywatchkey",$mywatchkey+1); 
  $rob_result = $redis->exec(); 
  if($rob_result){ 
    $mywatchlist = $redis->hGetAll("mywatchlist"); 
    echo "搶購成功!<br/>"; 
    echo "剩余數(shù)量:".($rob_total-$mywatchkey-1)."<br/>"; 
    echo "用戶列表:<pre>"; 
    var_dump($mywatchlist); 
  }else{ 
    echo "手氣不好,再搶購!";exit; 
  } 
} 
?>

以上所述是小編給大家介紹的redis使用watch完成秒殺搶購功能的實(shí)例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 淺談Python基礎(chǔ)之列表那些事兒

    淺談Python基礎(chǔ)之列表那些事兒

    這篇文章主要介紹了淺談Python基礎(chǔ)之列表那些事兒,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)Python基礎(chǔ)的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • python 線性回歸分析模型檢驗(yàn)標(biāo)準(zhǔn)--擬合優(yōu)度詳解

    python 線性回歸分析模型檢驗(yàn)標(biāo)準(zhǔn)--擬合優(yōu)度詳解

    今天小編就為大家分享一篇python 線性回歸分析模型檢驗(yàn)標(biāo)準(zhǔn)--擬合優(yōu)度詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python 對給定可迭代集合統(tǒng)計(jì)出現(xiàn)頻率,并排序的方法

    python 對給定可迭代集合統(tǒng)計(jì)出現(xiàn)頻率,并排序的方法

    今天小編就為大家分享一篇python 對給定可迭代集合統(tǒng)計(jì)出現(xiàn)頻率,并排序的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 如何在python中用os模塊實(shí)現(xiàn)批量移動文件

    如何在python中用os模塊實(shí)現(xiàn)批量移動文件

    在工作中難免會遇到需要批量整理文件的情況,當(dāng)需要從一堆文件中將部分文件批量地轉(zhuǎn)移時,如果手工一一轉(zhuǎn)移難免浪費(fèi)時間,這篇文章主要給大家介紹了關(guān)于如何在python中用os模塊實(shí)現(xiàn)批量移動文件的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Python連續(xù)賦值需要注意的一些問題

    Python連續(xù)賦值需要注意的一些問題

    這篇文章主要介紹了Python連續(xù)賦值需要注意的一些問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • 手動安裝python3.6的操作過程詳解

    手動安裝python3.6的操作過程詳解

    這篇文章主要介紹了如何手動安裝python3.6,本文給大家?guī)砹税惭b步驟,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • Python3+OpenCV實(shí)現(xiàn)簡單交通標(biāo)志識別流程分析

    Python3+OpenCV實(shí)現(xiàn)簡單交通標(biāo)志識別流程分析

    這篇文章主要介紹了Python3+OpenCV實(shí)現(xiàn)簡單交通標(biāo)志識別,主要思路是解析XML文檔,根據(jù)<name>標(biāo)簽進(jìn)行分類,如果是直行、右轉(zhuǎn)、左轉(zhuǎn)、停止就把它從原圖中裁剪下來并重命名,感謝的朋友跟隨小編一起看看示例代碼
    2021-12-12
  • 淺談Python生成器generator之next和send的運(yùn)行流程(詳解)

    淺談Python生成器generator之next和send的運(yùn)行流程(詳解)

    下面小編就為大家?guī)硪黄獪\談Python生成器generator之next和send的運(yùn)行流程(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Python如何使用OS模塊調(diào)用cmd

    Python如何使用OS模塊調(diào)用cmd

    這篇文章主要介紹了Python如何使用OS模塊調(diào)用 cmd,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • python3 讀取Excel表格中的數(shù)據(jù)

    python3 讀取Excel表格中的數(shù)據(jù)

    這篇文章主要介紹了python3 讀取Excel表格中的數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2018-10-10

最新評論

武乡县| 盐津县| 安塞县| 和平区| 余干县| 阜阳市| 宣武区| 赣榆县| 临江市| 木兰县| 弋阳县| 齐齐哈尔市| 应用必备| 原平市| 宁海县| 区。| 贡山| 航空| 镇沅| 邵阳市| 南城县| 成安县| 佛教| 扎赉特旗| 祁门县| 旬邑县| 平阴县| 昌宁县| 宣汉县| 喀喇沁旗| 合山市| 远安县| 颍上县| 马关县| 大悟县| 卓尼县| 会理县| 肃北| 新蔡县| 仪征市| 英吉沙县|