postpone_output
'postpone_output' 指令允许 NGINX 将发送到客户端的输出延迟到必要时再发送,从而优化资源使用。 — NGINX HTTP Core
postpone_output
httpserverlocation
语法postpone_output number;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1
说明
'postpone_output' 指令在可以生成响应但不需要立即发送给客户端的场景中特别有用。该指令告诉 NGINX 响应正文可以被延迟,从而通过推迟输出让服务器更有效地管理内存和处理。当启用该指令时,NGINX 工作进程不会立即将响应数据刷新到客户端的套接字,这可以通过减少系统调用次数并允许服务器同时处理多个请求而不发生过度的输出阻塞来提高性能。 该指令接受一个参数,用于指定可被延迟的最大量。当响应已完全构建但客户端正在忙或处理数据较慢时,该指令有助于确保不会在输出上浪费资源。它在 HTTP 级别上运行,其效果可以包含在 HTTP、server 和 location 上下文的配置文件中,从而允许在服务器处理的不同作用域上灵活应用。
配置示例
location /example {
postpone_output 1024;
}⚠
确保延迟输出的大小不会导致缓冲区溢出。
⚠
在不适当的上下文中使用 postpone_output 可能导致非预期行为。