我们在开发供外部调用的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
还是那句话,应用程序不需要关心,一句代码都不用动
服务器租用、托管,只有您想不到的,没有我们做不到的,只要您选择了我们三三在线http://www.33o***/,我们就会竭诚为您服务!!!。企点Q:2852361322电话:13924367540