037_nginx第三方扩展
一、ngx_func_limit_req.conf(nginx限制请求数配置)
# limit req zone
limit_req_zone $binary_remote_addr $http_user_agent zone=limit_peisong_minos_svr_with_ua:50m rate=10r/m;
limit_req_zone $binary_remote_addr zone=limit_peisong_minos_svr:50m rate=10r/m; #example#
#limit_req_zone $binary_remote_addr $http_user_agent zone=limit_make_order_with_user_agent:50m rate=10r/m;
#limit_req_zone $binary_remote_addr $uri zone=limit_verify_code_with_uri:50m rate=3r/m;
#limit_req_zone $server_name zone=limit_server_qps:10m rate=3500r/s;
#limit_req_zone $binary_remote_addr zone=limit_batch:20m rate=1r/m; limit_req_status 429;
geo $white_ip_list {
ranges;
default 0;
#127.0.0.1-127.0.0.255 1;
10.0.0.1-10.0.255.255 1;
27.115.18.82-27.115.18.82 1; # 公司出口IP
124.251.14.0-124.251.14.255 1; # 星光机房
124.251.41.0-124.251.41.255 1; # 星光机房
} limit_req_whitelist geo_var_name=white_ip_list geo_var_value=1;
ngx_func_limit_req_zone.conf(针对业务做限速)
# <1>
limit_req_zone $binary_remote_addr $http_user_agent zone=limit_req_checkout_cart_with_user_agent:50m rate=10r/m; # <2>
limit_req_zone $binary_remote_addr $uri zone=limit_req_make_order_with_uri:50m rate=9r/m;
limit_req_zone $binary_remote_addr $http_user_agent zone=limit_req_make_order_with_user_agent:50m rate=10r/m;
limit_req_zone $server_name zone=limit_req_make_order_for_server:10m rate=50r/s; # <3>
limit_req_zone $server_name zone=limit_req_checkout_local_cart_for_server:10m rate=166r/s; # <4>
limit_req_zone $server_name zone=limit_req_payments_for_server:10m rate=70r/s; # <5>
limit_req_zone $binary_remote_addr $uri zone=limit_req_verify_code_with_uri:50m rate=1r/s;
limit_req_zone $binary_remote_addr zone=limit_req_verify_code_send:50m rate=1r/s; # <6>
limit_req_zone $server_name zone=limit_req_server_qps:10m rate=8000r/s; # <7>
limit_req_zone $binary_remote_addr $http_user_agent zone=limit_req_restaurants_list_with_ua:50m rate=1r/s;
limit_req_zone $server_name zone=limit_req_restaurants_list_for_server:10m rate=400r/s; # <8>
limit_req_zone $binary_remote_addr $uri $http_user_agent zone=limit_req_restaurants_detail_with_ua_uri:50m rate=12r/m;
limit_req_zone $server_name zone=limit_req_restaurants_detail_for_server:10m rate=340r/s; # <9>
limit_req_zone $binary_remote_addr zone=limit_req_old_restaurants_menu:50m rate=5r/m;
limit_req_zone $server_name zone=limit_req_restaurants_menu_for_server:10m rate=270r/s; # <10>
limit_req_zone $server_name zone=limit_req_rebuy_for_server:10m rate=270r/s; # <11>
limit_req_zone $binary_remote_addr zone=limit_req_with_remote_addr_for_user_login:20m rate=5r/m; # <12>
limit_req_zone $binary_remote_addr zone=limit_req_with_remote_addr_for_check_user:20m rate=5r/m; # <13>
limit_req_zone $server_name zone=limit_req_flash_foods_for_server:20m rate=800r/s;
limit_req_zone $server_name zone=limit_req_flash_init_for_server:20m rate=400r/s;
limit_req_zone $server_name zone=limit_req_flashsale_foods_for_server:20m rate=100r/s;
limit_req_zone $server_name zone=limit_req_flash_restaurant_menu:20m rate=800r/s;
limit_req_zone $server_name zone=limit_req_flash_food_stock_decr:20m rate=800r/s; # <14>
limit_req_zone $server_name zone=limit_req_batch_for_server:10m rate=800r/s; # <15>
limit_req_zone $server_name zone=limit_req_index_entry_for_server:10m rate=665r/s; # <16>
limit_req_zone $server_name zone=limit_req_app_banner_for_server:10m rate=160r/s; # <17>
limit_req_zone $server_name zone=limit_req_order_status_for_server:10m rate=200r/s; # <18>
limit_req_zone $server_name zone=limit_req_order_detail_for_server:10m rate=230r/s; # <19>
limit_req_zone $server_name zone=limit_req_order_list_for_server:10m rate=200r/s;
二、ngx_func_limit_conn_zone.conf(nginx限制请求域配置)
limit_conn_zone $binary_remote_addr zone=limit_conn_with_remote_addr_for_flash_foods:20m;
limit_conn_zone $server_name zone=limit_conn_flash_foods_for_server:10m;
limit_conn_zone $server_name zone=limit_conn_for_server:10m;
037_nginx第三方扩展的更多相关文章
- 让时间处理简单化 【第三方扩展类库org.apache.commons.lang.time】
JAVA的时间日期处理一直是一个比较复杂的问题,大多数程序员都不能很轻松的来处理这些问题.首先Java中关于时间的类,从 JDK 1.1 开始,Date的作用很有限,相应的功能已由Calendar与D ...
- laravel中的自定义函数的加载和第三方扩展库加载
l 1. 创建文件 app/Helpers/functions.php <?php // 示例函数 function foo() { return "foo"; } 2. 修 ...
- WeUI教程/第三方扩展及其他UI框架对比
WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一.包含button.cell.dialog. progress. toa ...
- python第三方扩展库及不同类型的测试需安装相对应的第三方库总结
如何安装第三方库 1.通过python的第三方仓库pypi中查找想要的第三方库 pypi地址:https://pypi.python.org/pypi pip是一个安装和管理Python包的工具,通过 ...
- tp5 加载第三方扩展类库与手动加载的问题
=============================================================== <?phpnamespace my; /*** 加载第三方类库*/ ...
- laravel 5.1 添加第三方扩展库
步骤一:确定你要放第三方库的目录,假设:app/libs,并在该目录下放置类文件common.php.
- Python之安装第三方扩展库
PyPI 地址:https://pypi.python.org/pypi 如果你知道你要找的库的名字,那么只需要在右上角搜索栏查找即可. 1.pip安装扩展库 (1)安装最新版本的扩展库: cmd&g ...
- thinkphp5.1 使用第三方扩展类库
此案例介绍的不是通过composer加载的,是手工下载放入extend目录下的扩展类库,仍然以phpspider为例 将owner888目录放入extend目录下,也可以直接将phpspider目录放 ...
- composer下载tp5第三方扩展
(谨记:如果使用 composer 命令安装失败,请查看根目录下的 composer.json 文件是否正确,并查看下的扩展是否有多个版本,下载的版本是否符合当前框架的版本) 1.基础 compose ...
随机推荐
- idea创建父子工程
第一步:创建一个新的父工程father:file—–>new—->project ,注意要选maven,Create from archetype不要勾选.next填写GroupId .A ...
- springBoot打包发布项目------jar包
这两年微服务很流行,这里简单介绍一下如何将自己使用idea写的微服务打包成一个可执行的jar包,并发布到linux服务器的步骤.因为spring boot有内置的tomcat所以一般使用内置的tomc ...
- php中inset 和 和 empty 的区别
inset函数 用途:检测变量是否设置判断:检测变量是否设置,并且不是 NULL.如果已经使用 unset() 释放了一个变量之后,它将不再是 isset().若使用 isset() 测试一个被设置成 ...
- [Android] Android 使用 Greendao 操作 db sqlite(1)-- 直接在MainActivity中调用
继续接上文: Android 使用 Greendao 操作 db sqlite 布局文件: activity_test_green.xml <?xml version="1.0&quo ...
- GBK 字符集
什么是 GBK ? 中文名 汉字编码字符集 外文名 Chinese Internal Code Specification 全 称 <汉字内码扩展规范> GBK编码,是对GB2312 ...
- SQL Server进阶 窗口函数
概述 设计窗口函数目的? 在开窗函数出现之前存在着很多用 SQL 语句很难解决的问题,很多都要通过复杂的相关子查询或者存储过程来完成. 为了解决这些问题,在 2003 年 ISO SQL 标准加入了 ...
- Redis基础知识 之——发布/订阅
一.说明: 订阅,取消订阅和发布实现了发布/订阅消息范式(引自wikipedia),发送者(发布者)不是计划发送消息给特定的接收者(订阅者).而是发布的消息分到不同的频道,不需要知道什么样的订阅者订阅 ...
- PMD -- An extensible cross-language static code analyzer.
PMD An extensible cross-language static code analyzer. https://github.com/pmd/pmd 跨语言静态代码分析工具.可以查找通用 ...
- Coursera, Deep Learning 5, Sequence Models, week2, Natural Language Processing & Word Embeddings
Word embeding 给word 加feature,用来区分word 之间的不同,或者识别word之间的相似性. 用于学习 Embeding matrix E 的数据集非常大,比如 1B - 1 ...
- 【JS】空格分隔手机号
'88888888888'.replace(/^(.{3})(.*)(.{4})$/, '$1 $2 $3')