zoukankan      html  css  js  c++  java
  • php中使用redis实现秒杀


    <?php
    /**
    * $productTotal 商品总数
    * $productSellNum 已售商品数量
    * $currentBuyNum 当前购买数量
    */

    //商品总数
    $productTotal = 100;
    //当前购买数量
    $currentBuyNum = 5;
    try {
    $redis = new redis();
    $result = $redis->connect('127.0.0.1',6379);
    if(!$result){
    throw new Exception('redis连接失败');
    }
    } catch (Exception $e){
    echo $e->getMessage();
    die;
    }

    //监视 product_sell_num
    $redis->watch('product_sell_num');
    //已售商品数量
    $productSellNum = $redis->get('product_sell_num');
    //判断商品是否剩余
    if($productSellNum + $currentBuyNum <= $productTotal){
    $redis->multi();
    $redis->set('product_sell_num',$productSellNum + $currentBuyNum);
    $status = $redis->exec();
    if($status){
    //对购买信息处理
    }else{
    return "抢购失败";
    }
    }else{
    return "抢购结束";
    }

  • 相关阅读:
    分布式消息系统Kafka初步
    webService 学习
    一个周末掌握IT前沿技术之node.js篇
    mount
    dd
    fsck
    resize2fs
    mkfs
    parted
    tune2fs
  • 原文地址:https://www.cnblogs.com/WebLinuxStudy/p/12808744.html
Copyright © 2011-2022 走看看