
如何用redis+lua来实现高并发限流,超时数据进行等待
然后,作为下游系统,我们需要控制并发以防止无效请求。为了确保原子性,在这里,我使用Redis + LUA脚本进行控制。然后,对于服务提供商,当请求数量超过设置的限流阈值时,将直接返回错误代码/错误提示,并终止请求的处理。对于调用者,我们要做的是:当并发请求超过限制的阈值时,请延迟请求,而不是直接丢弃它。当每秒有20个以上的请求时,它将提示“对接口进行签名的客户端请求数超过了限制”。如下RedisLimiter类,服务提供方使用limit方法实现限流,服务调用方使用limitWait方法实现限流等待(如需)


























