信号量是那个值有的时候 acqiure()拿得到 可以往下执行
闭锁是那个值有的时候 await() 一直等待 不能往下执行

/// Redisson 信号量 可以用来做限流处理@GetMapping("/park")@ResponseBodypublic String park() throws InterruptedException {//和锁一样  随便指定一个名字 只要名字相同获取的就是同一个信号量RSemaphore park = redissonClient.getSemaphore("park");//  park.acquire();//阻塞式方法  获取成功执行下面  获取不成功就一直在这一句卡住//占成功了   redis里这个信号量的值就会 减一boolean b = park.tryAcquire();if(b){//执行业务return "park =>信号量有值 获取成功  可以执行业务";}else{return "park => 没有获取到信号量";}}@GetMapping("/go")@ResponseBodypublic String go(){RSemaphore park = redissonClient.getSemaphore("park");park.release();//执行这一句  信号量的值加一return "go";}

首先redis中没有 park这个信号量 访问 /go方法 创建一个信号量 值为0 这时访问 /park 会一直卡住 因为信号量为0 他获取不到信号量 就会一直阻塞在 acquire()这个方法上

这时再访问一次 /go 信号量加一 访问 /park 信号量减一 使用tryAcquire 没拿到信号量值就直接走了

Redisson信号量相关推荐

  1. 谷粒商城开发踩坑及部分知识点大总结

    谷粒商城开发BUG踩坑及部分知识点大总结 基本上bug的出现位置和时间线都能够匹配 如果对你有帮助的话就点个赞哈 2022.6.28 github设置ssh免密登陆,以下代码在git bash上面输入 ...

  2. 谷粒商城面试知识点总结(三)

    11.本地事务和分布式事务 在以往的单体应用中,我们多个业务操作使用同一条连接操作不同的数据表,一旦有异常,我们可以很容易的整体回滚 事务是4大特性:ACID 事务的4大隔离级别:读未提交,读已提交, ...

  3. 电商项目实战之商品秒杀

    电商项目实战之商品秒杀 定时任务 corn表达式 实现方式 基于注解 基于接口 实战 秒杀系统 秒杀系统关注问题 秒杀架构设计 商品上架 获取当前秒杀商品 获取当前商品的秒杀信息 秒杀最终处理 参考链 ...

  4. Day437438439.秒杀服务 -谷粒商城

    秒杀服务 一.定时任务-Quartz Cron表达式 执行定时任务需要给一个时间计划,这个时间计划可以用 Cron 表达式来编写 官方文档 Cron 表达式是一个字符串,是用空格分割的六到七个属性. ...

  5. 秒杀服务------技术点及亮点

    大技术 使用Redisson 使用Redisson在秒杀服务中有两个作用,一个是作为分布式锁来确保多个秒杀服务同时在线时同时上架秒杀商品,只允许有一个秒杀服务成功上架秒杀商品,其他的上架失败.第二个作 ...

  6. 秒杀场景分析以及案例实现

    1.秒杀活动 1.1.定时任务 /*** 定时任务* 1.@EnableScheduling 开启定时任务* 2.@Scheduled开启一个定时任务** 异步任务* 1.@EnableAsync:开 ...

  7. 谷粒商城-个人笔记(高级篇五)

    目录 十一.支付 1.内网穿透 1).简介 2).使用场景 3).内网穿透常用软件和安装 2.支付整合 1).支付宝加密原理 2).配置支付宝沙箱环境 3).订单支付与同步通知 4).订单列表页渲染完 ...

  8. 【谷粒商城】分布式事务与下单

    笔记-基础篇-1(P1-P28):https://blog.csdn.net/hancoder/article/details/106922139 笔记-基础篇-2(P28-P100):https:/ ...

  9. 秒杀服务-----功能实现逻辑

    管理员上架秒杀商品的流程 1.去后台管理系统添加新的秒杀场次(注意这里不能把之前的秒杀场次给修改后再次使用,还有时间必须要三天内) 2.在秒杀服务中的定时任务修改一下每5s上架一次(这样是为了更快上架 ...

最新文章

  1. JQUERY动态生成当前年份的前5年以及后 2年
  2. 求两个矩形重叠部分的面积
  3. 【ARM-Linux开发】【CUDA开发】【深度学习与神经网络】Jetson Tx2安装相关之二
  4. python课程与c+课程有什么不同-南通渡课少儿编程:python和C的区别是什么?
  5. 新建parcel写入数据后,读取数据为null
  6. Jquery mobile 解决IOS9selectli闪退问题
  7. centos6.7x86_64php7安装笔记 new
  8. 技压群雄!2021 NTIRE @CVPR 2021的三冠一亚视频超分方案:BasicVSR++
  9. 荣耀V40渲染图曝光 将搭载双曲面瀑布屏
  10. linux 彻底定制指南,8.3. Linux-2.6.11.12 《Linux 彻底定制指南》[翻译:金步国]...
  11. 面试官问你有什么要问的时候,大胆的提出类似问题
  12. 排查 CI Unable to load the requested file
  13. jQuery实现表头固定效果
  14. 如何从零设计结构清晰、操作友好的权限管理模块
  15. 使用Cent Browser+Aria2+Bilibili Envolved下载b站视频--保姆级安装步骤
  16. 6个简历模板免费下载网站,资源超多,质量超高!
  17. python numpy.arry, pytorch.Tensor及原生python中list相互转换
  18. 11,MSI文件简介
  19. 刘雅琴等 | 基于“一张表”平台推动面向高校教师的数据治理实践
  20. RocketMQ Web控制台监控界面介绍+部署

热门文章

  1. Android系统的HAL层分析 -- Sensors
  2. Unity使用MVC架构制作牧师与魔鬼小游戏
  3. particle filtering---粒子滤波
  4. 【评测】TheraPEAK SfAAV培养基
  5. 运动装备什么牌子好?双十一运动装备选购推荐
  6. compose 编程思想
  7. ubuntu 缩放调整
  8. sofia源码树目录结构
  9. 创客匠人6月功能更新:服务商管理、直播、学员版APP全新上线
  10. 不看后悔 | 分分钟教你做知识图谱大数据专家