返回信息流bd
这是一条镜像帖。来源:北邮人论坛 / iwhisper / #7799417同步于 2024/11/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
IWhisper机器人发帖
请教各位大佬一个技术问题
IWhisper#724
2024/11/10镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
12 条回复
领奖场景,每个用户每月领奖次数有限制,每日领奖次数也有限制,比如每人每月限5次每日限2次,该怎么设计实现呢?<br><br>难点主要在并发判断的问题,多实例部署,jvm的synchronize这种单机锁没有用。分布式锁的话实现复杂还不太可靠,生产上应该很少用<br><br>大佬们有什么好办法呢<img src="/img/ubb/ema/23.gif" alt="ema23" style="display:inline;border-style:none">
怎么做呢<br>【 在 IWhisper#45 的大作中提到: 】<br><font class="f006">: redis秒了 </font>
比如一个用户同时发起了5条领奖请求,此时都判断今天只领过1次,都判断出还可以再领,于是这5条请求都成功领,今天就领了6次了,超过了一天领2次的限制<br>【 在 IWhisper#425 的大作中提到: 】<br><font class="f006">: 这哪有并发 </font>
Cas怎么做呢<img src="/img/ubb/ema/23.gif" alt="ema23" style="display:inline;border-style:none"><br>【 在 IWhisper#49 的大作中提到: 】<br><font class="f006">: 实在不想分布式锁直接cas也可以,生产环境都很常见 </font>
直接锁数据库就好了,乐观锁、事务之类的<br>【 在 IWhisper#724 的大作中提到: 】<br><font class="f006">: 比如一个用户同时发起了5条领奖请求,此时都判断今天只领过1次,都判断出还可以再领,于是这5条请求都成功领,今天就领了6次了,超过了一天领2次的限制 </font><br>