服务稳定性模块
1、模块实现的功能
-
主要提供页面的防刷功能,通过指令配置,针对请求超过阈值的IP + URL,返回403, 进行请求冻结
-
@todo list
- 1、多维度防刷 支持IP防刷,URL防刷,IP+URL综合防刷
- 2、优化hashtable存储结构
2、编译安装
nginx的release版本下加入本模块
./configure --prefix=/Users/baidu/dev/nginx --add-module=/{$USER_PATH}/github/nginx-stability-module/
- --prifix 安转目录
- --add-module 加入第三方模块地址
- --with-http_stub_status_module 加入非默认的第三方库地址
3、nginx.conf配置说明
1. anti_shm_size : [1 .. 102400000000]
context : location
default : on
说明 : 申请数据采集和冻结功能的共享内存大小
2. anti_acqu_cycle : [ 1 .. 102400000000]
context : location
default : on
说明 : 数据采集的周期,单位是秒
3. anti_threshold : [ 1 .. 102400000000]
context : location
default : 10000
说明 : 启动冻结功能的阈值,单位是秒
4. anti_frozen_time : [ 1 .. 102400000000]
context : location
default : 60
说明 : 启动冻结的时长
5. anti_acqu_hash_size : [ 1 .. 102400000000]
context : location
default : 128
说明 : 数据采集存储的hashtable 数组的大小,并发越高,该值建议设大
6. anti_frozen_hash_size : [ 1 .. 102400000000]
context : location
default : 128
说明 : 服务冻结存储的hashtable 数组的大小,冻结数据越多,该值建议设大