proxy_responses
proxy_responses 指令控制 NGINX Stream 模块在关闭连接之前从上游服务器接受的响应数量。 — NGINX Stream Core
proxy_responses
streamstream server
语法proxy_responses number;
默认值none
上下文stream, stream server
模块NGINX Stream Core
参数1
说明
`proxy_responses` 指令在 NGINX 的 `stream` 上下文中使用,用于指定在 NGINX 关闭连接之前允许从上游服务器接收多少个响应。该指令在处理 TCP/UDP 流量时尤其有用,因为与上游服务器保持稳定的通信通道对于性能和可靠性至关重要。如果为该指令指定一个整数参数,NGINX 会记录接收到的响应数量,一旦达到指定的限制便会自动关闭连接。这在上游服务器已知会提供有限响应量的场景中,或在实现特定的响应处理速率时,会有所帮助。 使用 `proxy_responses` 时,可以通过选择与需求相符的数字来简单地控制其行为。例如,如果您预期在峰值负载下会有大量服务器响应,将该指令设置为较大的数值可能有利。另一方面,较小的数值可以确保连接不会比必要的时间更长地保持打开,从而将资源使用降到最低。在配置该指令时,务必考虑与上游服务的协议特性和连接模式,因为过早关闭连接可能导致不必要的重传或数据包丢失。
配置示例
stream {
upstream my_upstream {
server backend1.example.com:1234;
server backend2.example.com:1234;
}
server {
listen 1234;
proxy_pass my_upstream;
proxy_responses 5;
}
}⚠
请记住,将该数值设置得过低可能会导致有效响应因连接过早关闭而被丢弃。
⚠
如果连接长时间保持打开且未得到妥善处理,过高的数值可能导致资源耗尽。