Sentinel
Sentinel copied to clipboard
修复ThrottlingController大量并发访问时可能流控失效的问题
Describe what this PR does / why we need it
ThrottlingController 窄时间窗口内大量并发访问时可能流控失效
Does this pull request fix one issue?
feature:https://github.com/alibaba/Sentinel/issues/3091
Describe how you did it
在给latestPassedTime设置最新的时间前,先通过cas判断下值是否被修改过了,如果有则表示已有其他线程设置成功,当前线程需要走后续排队的流程。
Describe how to verify it
jmeter压测
Special notes for reviews
麻烦提供下增加 CAS 锁前后的 JMH 性能测试报告,我们这边也同步做下测试 另外,如果性能存在一定差异,建议增加一个开关来控制是否使用这种严格模式