js_fetch_timeout

为 NGINX JavaScript module 中获取响应设置超时。

语法js_fetch_timeout timeout;
默认值none
上下文stream, stream server
参数1

说明

js_fetch_timeout 指令用于指定 NGINX JavaScript module (NJS) 等待 fetch 操作完成的最长时间(以毫秒为单位)。在 NGINX 内运行的 JavaScript 代码发起异步请求时,这一点很重要,可以确保长时间运行的请求不会导致服务无响应。该超时适用于所有由使用 njs module 的脚本发起的 fetch 请求,使开发者能够通过超时管理有效地处理成功和错误情况。

设置 js_fetch_timeout 指令时,它接受一个参数,用于定义以毫秒为单位的超时时长。如果 fetch 操作未能在指定时间内完成,NGINX 将自动终止该请求,阻止进一步处理,并允许在你的 NJS 脚本中进行优雅的错误处理。在响应时效性至关重要的应用(例如以 API 为驱动的环境)中,这有助于管理性能和资源使用。

需要注意的是,该指令可以在 stream 和 stream server contexts 中配置,使其适用于不同的服务器配置。超时应根据预期的网络延迟和通过 fetch 操作访问的后端服务的性能特性来设置。

配置示例

js_fetch_timeout 5000;

确保超时时间设置得当;过低可能导致合法请求失败。

该指令仅适用于获取操作,并不会影响在 NGINX 中定义的其他请求超时。

数值必须以毫秒为单位指定。

← 返回所有指令