Nginx作为开源版,提供大量的丰富功能,能满足大部分需要。Nginx Plus是Nginx的加强版,是在开源Nginx功能基础上,提供了许多适合生产环境的专业功能,包括高可用性、主动健康检查、DNS 系统发现、会话保持和 RESTful API等,但这些功能基本都需要收费。本文讲述这些增强功能。
负载均衡
会话访问策略
Nginx plus在负载均衡访问策略中提供了基于会话(Session)的访问策略,通过会话相关性,可保证来自同一客户端的请求传递到一组服务器中的同一服务器。但如果指定的服务器无法处理请求,则会选择新服务器,就好像客户端尚未绑定一样。会话访问策略主要如下三种方式。
功能由模块ngx_http_upstream_module提供。
Sticky Cookie
基于Cookie会话访问策略配置示例如下:
upstream backend {server backend1.example.com route=a; server backend2.example.com route=b; # 采用sticky cookie策略,实用详见指令sticky cookie affinity expires=1hdomain=.example.com httponlysecure path=/;
}
指令:sticky cookie name [expires=time] [domain=d