NGINX替换概念对照
开源NGINX与商业负载均衡间主要存在以下概念差异:
- upstream对应着服务器池
- location对应着分发策略与分发规则
- 如果存在if、rewrite等配置,同样对应着分发策略与分发规则
- root/alias对应着静态资源
- server对应着虚拟服务
- http{} 限定为七层虚拟服务
- stream{} 限定为四层虚拟服务
因此,我们创建虚拟服务前,需要先确认控制台上已经成功添加了转发引擎,然后先创建【服务器池】(需要选定主动健康检查策略、负载均衡算法,另外可选温暖上线、虚拟组策略等),再创建【虚拟服务】(根据需要可选创建静态资源、会话保持算法、应用失效保障页面、分发策略、分发规则、IP集合、聚合接口与IP地址、浮动组与虚拟浮动IP、SNAT源地址池、七层HTTP策略、压缩策略、访问策略、SSL证书、SSL策略等),即可实现智能流量分发。
详细配置逻辑参考
服务器池与upstream
- 支持RR轮询、最快响应、最小连接、哈希、一致性哈希等多种负载均衡算法
- 支持温暖上线与优雅下线
- 支持AND/OR多健康检查算法协作
- 支持多节点同时进行主动健康检查
- 支持多虚拟组,允许按组控制服务器节点
- 支持优先级功能
- 支持并发连接限制
- 支持针对服务器池或者服务器节点的监控体系
详见服务器池用户手册
主动健康检查
- 支持ICMP、TCP完整握手、TCP半连接、常见数据库SQL、UDP等多种健康检查协议
- 支持上线、下线时间与次数的明细配置
- 支持内容检查
详见健康检查用户手册
支持自定义健康检查
- 自定义编程语言
- 支持变量定义
- 支持条件判断
- 支持循环处理
- 提供内置函数简化编程
- 支持静态语法检查
- 支持GUI界面运行调试
- 支持跨服务器池的复合策略
- 支持常见健康检查协议
- 支持10万节点级的并发检查
详见自定义脚本
静态资源与root配置
- 文件资源管理:.tar.gz或者.zip两种压缩包格式;后续更改部分文件或者目录时,可以单个新增、删除;
- 高可用:管理节点可保存静态资源,在静态资源列表页中可显示相关转发引擎的同步状态;
- 支持目录映射
- Minetype映射:每个静态资源都可以独立配置mimetype,并可以配置默认minetype;
- 图形化:静态资源将以树状图形化展示;
- 2种URL映射关系:完全映射与去URL映射;
- 首页文件:可自动或手动配置首页文件;
- 预压缩功能:支持GZIP和BROTLI预压缩;
详见静态资源用户手册
分发策略与if配置
- 基于客户端地址段处理请求(客户端地址段详见IP集合管理)
- 基于HTTP请求的URI
- 支持完全/前缀/正则匹配
- 基于HTTP请求的URL参数
- 名称任意/全量匹配
- 名称值完全匹配
- HTTP请求HOST域名匹配
- SSL层SNI匹配
- HTTP请求HEADER匹配
- HTTP请求Method匹配
- HTTP请求Cookie匹配
详见分发策略
分发规则与location配置
- 一条分发规则支持多条分发策略
- 可独立指定四层/七层策略
- 支持多种处理方式
- TCP/TCP+SSL/HTTP/HTTPS代理
- 支持应用失效保障页面
- 指定其他状态码
- 支持JSON/XML等包体格式
- 支持指定资源页面
- 静态资源
- 支持重定向
- TCP/TCP+SSL/HTTP/HTTPS代理
- 分发规则可指定低、中、高优先级
- 同优先级下,可在页面上拖动改次优先级
- 同优先级下,可在页面上拖动改次优先级
- 支持默认分发规则
证书管理与ssl_certificate
- 支持证书链、私钥与CA证书关联
- 证书即将过期、已过期都会生成提醒事件
- 可设置安全管理员角色横向管理所有业务
详见证书管理
国密算法与SSL策略
- 支持面向下游客户端的SSL策略
- 支持面向上游服务器的SSL策略
- 支持国密算法
- 支持session ticket/session cache
- 支持证书校验
- 支持ECDSA/EDDSA证书
详见SSL策略
会话保持算法
- 支持Cookie会话保持策略
- 支持Hash/Insert/Passive三种策略
- 支持Hash/Insert/Passive三种策略
- 支持源地址段会话保持策略
- 支持SSL Session ID会话保持策略
- 支持请求Header会话保持策略
- 支持URI会话保持策略
- 支持URL参数会话保持策略
- 支持跨虚拟服务的共享会话保持
详见会话保持策略
丰富的策略配置
应用失效保障页面与error_page
- 代理功能下支持应用失效保障页面
- 支持状态码映射
- 支持按范围匹配状态码
- 支持高优先级的单状态码
详见应用失效保障页面
虚拟服务与server
- 可通过状态控制关闭/开启服务
- 支持单机或者集群模式
- 支持监听多地址、多端口及端口范围
- 按优先级指定多分发规则
- 支持默认分发规则
- 支持TFO/KeepAlive/ProxyProtocol等多种功能
- 支持基于可信IP集合提取XFF客户端地址
- 支持配置多种访问控制策略
- 支持配置多种超时、缓存配置
- 支持配置是否缓存请求或者响应包体
- 支持被动健康检查失败后换服务器重发请求
详见虚拟服务