nginx实现读写限流

2019-05-28    来源:爱站科技

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

我们在开发供外部调用的api可能会根据领导的要求需要限流,那么你知道nginx如何实现读写限流吗?还不了解的小伙伴们一起来参考一下吧,希望对你有所帮助。

nginx 读写限流

前段时间,开发了一个供外部调用的api,领导说要限流,请求单个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 -s reload

还是那句话,应用程序不需要关心,一句代码都不用动

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

标签: [db:TAGG]

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:docker python实现打包的方法

下一篇:CentOS中route命令的解析