http2_recv_buffer_size
在 NGINX 中设置用于 HTTP/2 连接的接收缓冲区大小。 — NGINX HTTP Core
http2_recv_buffer_size
http
语法http2_recv_buffer_size size;
默认值none
上下文http
模块NGINX HTTP Core
参数1
说明
在 NGINX 中,`http2_recv_buffer_size` 指令用于指定用于处理传入 HTTP/2 流量的缓冲区大小。该指令对于优化服务器处理各种类型请求的能力至关重要,尤其是在处理 HTTP/2 通信中常见的多个并发连接时。默认情况下,该值未设置,这可能导致在高负载下性能较低,或如果设置过高则导致内存使用过多。因此,根据预期的流量模式和服务器资源平衡缓冲区大小非常重要。 当定义此指令时,它接受一个表示大小的单一参数,可用字节、千字节或兆字节指定(例如 1m 表示 1 兆字节)。该缓冲区主要在从客户端读取传入数据时使用,为管理通过连接传输的 HTTP/2 帧建立了一个受控环境。将此缓冲区设置得过小可能导致性能下降或额外的延迟,因为服务器需要更频繁地从套接字读取。相反,缓冲区过大可能会浪费服务器内存资源,尤其是在高连接数的情况下。因此,应根据服务器的负载预期和可用资源仔细考虑最优缓冲区大小。
配置示例
http {
http2_recv_buffer_size 256k;
}⚠
确保缓冲区大小根据预期流量适当设置;过小会导致性能问题,过大则会浪费内存。
⚠
错误配置可能导致在高负载下服务器出现意外行为或资源耗尽。