Welcome to JiKe DevOps Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
438 views
in Technique[技术] by (71.8m points)

nginx可以针对不同域名/路由限流吗?

nginx好像只可以针对整体请求限流?
能针对不同的后端服务进行限流吗?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

Please log in or register to answer this question.

1 Answer

0 votes
by (71.8m points)

Nginx官方版本限制IP的连接和并发分别有两个模块:
limit_req_zone 用来限制单位时间内的请求数,即速率限制,采用的漏桶算法 "leaky bucket"。
limit_req_conn 用来限制同一时间连接数,即并发限制。

举一个例子,你自己理解下:

一次只允许每个IP地址一个连接。

limit_conn_zone?$binary_remote_addr?zone=perip:10m;????
limit_conn_zone?$server_name?zone=perserver:10m;????
server?{????????
    ...????????
    limit_conn?perip?10;????????
    limit_conn?perserver?100;????
    }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to JiKe DevOps Community for programmer and developer-Open, Learning and Share
...