Nginx如何实现读写限流的方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx如何实现读写限流的方法相关的知识,希望对你有一定的参考价值。
针对nginx请求,单个IP,每秒50读次,写10次。
万能的Nginx,几行配置搞定
# 先定义好规则,需要写在server外面
limit_req_zone $binary_remote_addr $uri zone=api_write:20m rate=10r/s; # 写
limit_req_zone $binary_remote_addr $uri zone=api_read:20m rate=50r/s; # 读
# 把需要限速的接口应用上上面的规则
# 写10/秒
location = /api/v1/trade {
limit_req zone=api_write burst=10;
proxy_pass http://api_server;
}
# 查询50/秒
location /api/v1/query {
limit_req zone=api_read burst=50;
proxy_pass http://api_server;
}
重新加载Nginx配置文件 nginx -s reload
还是那句话,应用程序不需要关心,一句代码都不用动
以上是关于Nginx如何实现读写限流的方法的主要内容,如果未能解决你的问题,请参考以下文章
限流的几种方案
OpenResty实现对Nginx限流
Redis 限流的 3 种方式,还有谁不会!
dubbo是如何控制并发数和限流的?
两个简单的API限流实现方案
限流和常见的三种算法