proxy_send_lowat
'proxy_send_lowat' 指令指定代理模块发送缓冲区的低水位阈值,影响数据传输效率。 — NGINX HTTP Core
proxy_send_lowat
httpserverlocation
语法proxy_send_lowat size;
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1
说明
'proxy_send_lowat' 指令用于 NGINX HTTP 服务器,用来配置代理模块发送缓冲区的低水位阈值,单位为 bytes。当发送缓冲区低于该指定阈值时,NGINX 工作进程会提高向客户端的数据传输速率,以避免网络连接未被充分利用。这有助于提高网络吞吐量,尤其是在流式传输数据和将请求代理到 upstream servers 的场景中。 该指令的参数必须以整数形式提供,表示在 NGINX 进程再次从缓冲区发送数据之前,发送缓冲区中应保留的最小 bytes 数量。为高延迟链路设置合适的值可以增强性能,因为它确保总有足够的数据准备好发送,从而保持连接的繁忙状态。相反,将该值设置得过低可能导致带宽利用率低下,因为 NGINX 可能会不断暂停以检查缓冲区状态,从而对性能产生负面影响。 该指令可在 'http'、'server' 或 'location' 区块的上下文中使用,使管理员能够在服务器架构的不同层级灵活配置行为。对该值进行适当调优可以显著改善响应时间,并在负载变化的应用场景中,特别是在代理设置下,优化资源使用。
配置示例
http {
proxy_send_lowat 16384;
}⚠
如果设置得过低,可能会导致非常频繁的发送操作,从而降低性能。
⚠
误解缓冲区上下文可能导致带宽未被充分利用,尤其在配置不当时。