zoukankan      html  css  js  c++  java
  • Redis 锁的实现方案

     开发中不可避免的是碰到并发请求,在数据严谨性的要求不高时,我们也不需要做什么处理,但如果碰到数据严谨性非常高的时候(例如:用户金额,秒杀产品的库存...),我们就需要慎重处理了。

    解决方案多种多样,下面是一个redis锁的解决方案,直接看示例代码(PHP)

    $key = 'lock_key';
    
    try {
        if (!$redis->sadd($key, 1)) { // 加锁
            throw new Exception('你来慢一步');
        }
    
        /** 
         * 业务逻辑实现
        */
    
        $redis->del($key); // 解锁
    } catch (Exception $e) {
        // 异常处理
    }

    稍微需要注意的是,在加锁这一步,如果用set来实现,是有坑的、、、至于什么坑,你可以写个代码实现下就知道了。。。

  • 相关阅读:
    div 背景透明,字体不透明
    弹性盒子(1)
    小练习(4)
    小练习(3)
    图标文字上拉效果
    小练习(2)
    小练习
    css的使用(1)
    复合的使用
    表单元素的使用 form input
  • 原文地址:https://www.cnblogs.com/fengchi/p/7778716.html
Copyright © 2011-2022 走看看