ajp_send_lowat
指令 `ajp_send_lowat` 为 AJP 协议的套接字配置低水位标记,以管理发送缓冲区的行为。
Support AJP protocol proxy with NGINX
·
httpserverlocation
语法ajp_send_lowat size;
默认值none
上下文http, server, location
参数1
说明
ajp_send_lowat 指令用于支持 AJP 协议的 NGINX 模块,允许对发送到 AJP 后端服务器的数据传输行为进行精细控制,通常用于连接像 Tomcat 这样的 Java 应用服务器。当设置此指令时,它指定了 AJP 套接字发送缓冲区的“低水位标记”,也就是说,当发送队列中的字节数降到低于该阈值时,NGINX 可以认为连接状态良好并准备好发送更多数据。这样可以优化流量控制,避免在服务器回传不足的情况下连接被过度填充数据,导致效率低下或在超过阈值时发生请求丢失。
该指令的参数是一个数字,用于以字节为单位设置低水位标记。默认情况下,如果未显式设置,该指令被视为 none,意味着使用自动的系统默认值。通过管理此设置,管理员可以确保其 NGINX 实例更好地应对高负载场景,并防止在缓冲区意外填满时产生的反压,从而提高整体应用性能和响应性。
配置示例
http {
server {
listen 80;
location / {
ajp_pass myapp;
ajp_send_lowat 16384;
}
}
}⚠
将 ajp_send_lowat 设置得过低可能导致 NGINX 过于频繁地发送数据,从而增加开销。
⚠
相反,将其设置得过高可能导致缓冲区饱和并延迟数据发送,影响响应性。