dynamic_upstrand
'dynamic_upstrand' 指令允许根据指定参数在运行时选择 upstreams。
NGINX Combined Upstreams module
·
serverlocationif in location
语法dynamic_upstrand upstream_name [upstream_name2 ...];
默认值none
上下文server, location, if in location
参数2+
说明
'dynamic_upstrand' 指令是 NGINX Combined Upstreams module 提供的一项强大功能,使用户能够定义可在运行时动态选择的 upstream 服务器。该指令至少需要两个参数,通常用于指定可供选择的 upstream 服务器定义。通过支持运行时配置,该指令为更灵活的负载均衡和资源管理打开了可能性,使服务器能够根据当前的需求或 upstream 资源的可用性进行调整。\n\n在配置 'dynamic_upstrand' 指令时,用户可以组合各种 upstream 指令以微调请求的路由方式。传递给该指令的参数决定请求与已定义 upstream 层交互的运行时行为,从而提升性能和可靠性。本质上,它允许 NGINX 更灵活、快速地决定将请求路由到哪个 upstream,能够根据实时状况进行调整,而不只是依赖静态配置。
配置示例
location /api {
dynamic_upstrand primary_servers secondary_servers;
}⚠
确保参数的数量至少为两个,否则在加载配置时 NGINX 会抛出错误。
⚠
注意命名错误的 upstream;如果某个 upstream 并不存在,NGINX 可能无法正确路由请求。