limit_req_zone $binary_remote_addr zone=xxx:10m rate=5r/s;
1.这里面的 rate=5r/s ,这个设置根据什么指标或者该设置多少合适呢?
2.另外一个疑问如果一个 web 页面算上一些图片,css ,js 共 10 个请求资源,是不是起码设置 10r/s ?
1
eason1874 2022-03-02 15:40:13 +08:00 4
1 、并发多少合适,看后端能力和带宽。我带宽小,我按分配带宽除以 5kb ,每 1Mbps 就是 25
2 、并发数不一定要满足页面总请求数,并发数只是代表服务器同一时间只处理这么多,你也可以接受请求,排队处理,配套的 limit_req 的 burst 参数就是允许排队的请求数量 比如你配置 rate=5r/s 和 burst=10 ,你同时发 10 个请求过来,服务器也会正常响应给你,但会排队处理,一次处理 5 个。如果你同时发 18 个过来,有 5 个直接处理,剩下 10 个排队处理,超出的 3 个返回拒绝状态 |