幂等Key、QPS、限流算法

幂等Key作用:判断多次请求是否为同一个 多次相同的请求只能执行一次
(在 Controller 层判断)
幂等key一样,就是同一请求,只执行一个

// TODO 思路 :如果幂等key不存在,我就扣款。如果这个幂等key存在,我就不执行扣款。(该思路实现上有问题)
1、先取幂等key
2、幂等key存在 返回 false 或者抛异常
3、不存在 先存储一份

写高并发接口,考虑时间差
解决方案:
加锁(功能可以,但是访问会出现单个序列访问问题)
消除时间差(redis自增值increment,判断 increment > 1)


QPS -> 接口每秒并发量 count++
限流算法
令牌桶限流
漏桶限流

1、令牌桶限流(限流注解+增强注解类+guava、aop依赖)
一个桶定时每秒生成三百个令牌(300/s),用户访问从桶中拿令牌。没有拿到令牌拒绝访问。

2、漏桶限流(使用案例:流量削峰)
所有请求都进来 -> 处理300个


接口能承载 300QPS
接口 每秒 能承载 300 人 访问


鼠标 -> 光标

微信、支付宝的金额在数据库中以分为单位
double 会出现精度丢失

 

posted @   青核桃啊  阅读(62)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示