nginx-QPS限制

漏桶算法: 通过nginx配置实现QPS限速。

#设置请求并发量 qps=1,不设置burst,会同时处理并发的请求,但是由于我们只设置了1个qps,所以同一时间内的请求,只有一个是正常的,其他都是失败的。

http配置limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s

在想限速的server字段中配置limit_req zone=one;

nginx-QPS限制_第1张图片
 

配置后,用压测工具进行压测请求,会发现基本上会严格要求我们在nginx中设置的并发量。

burst配置

请求以队列的形式依次进行处理,而不是5个请求同时处理。

会将前五个请求放到桶里面,后面的请求放在队列里面(不会放弃连接),延迟等待处理。

nginx-QPS限制_第2张图片

快速失败配置nodelay

在桶外面等待的延迟请求,直接失败返回。 

nginx-QPS限制_第3张图片

你可能感兴趣的:(nginx,服务器,linux)