fastcgi_next_upstream_timeout

为 NGINX 中 FastCGI 的后续上游请求设置超时时间。 — NGINX HTTP Core

fastcgi_next_upstream_timeout
httpserverlocation
语法fastcgi_next_upstream_timeout time;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1

说明

`fastcgi_next_upstream_timeout` 指令定义了在初始请求失败时对后续 FastCGI 请求的超时时间。该指令允许精细控制在首次尝试失败后服务器在放弃 FastCGI 上游之前将等待多长时间。 在对响应时间要求严格、且服务器可能会将请求重试到不同后端以获取更快响应的应用场景中,指定该超时非常关键。该超时可以在不同上下文中设置,包括 http、server 和 location 块,从而根据配置需求提供灵活性。 该指令接受一个时间值作为参数,通常以秒为单位。如果在指定超时时间内未从上游 FastCGI 服务器收到响应,NGINX 将中止该请求并以相同方式处理下一个上游。这种行为保证服务器保持响应性并能够优雅地处理来自 FastCGI 应用的失败。开发者有时可能需要根据应用性能和必要的故障切换策略调整此超时,以确保更高的可用性和更低的请求延迟。

配置示例

location /api {
    fastcgi_pass backend;
    fastcgi_next_upstream_timeout 10s;
    include fastcgi_params;
}

确保将超时设置为合理的值,以避免重试时出现过长的延迟。

如果上游服务器响应较慢,使用非常短的超时可能会导致频繁的请求失败。