http2_body_preread_size
http2_body_preread_size 指令设置在处理之前可以预先读取并缓冲的 HTTP/2 请求主体的最大大小。 — NGINX HTTP Core
http2_body_preread_size
httpserver
语法http2_body_preread_size size;
默认值none
上下文http, server
模块NGINX HTTP Core
参数1
说明
`http2_body_preread_size` 指令用于配置在将请求交给 NGINX 的请求处理处理器之前,可以读取并临时存放于内存(缓冲)的 HTTP/2 请求主体的最大大小。对于在完全处理之前需要对请求主体进行早期验证的应用,这一配置特别有用。 当通过 HTTP/2 协议接收请求时,缓冲一部分请求主体允许 NGINX 分析或验证内容,例如检查特定头部或确保主体符合预期的数据格式。为 `http2_body_preread_size` 设置合适的大小有助于优化内存使用和性能,因为设置过大可能导致不必要的内存消耗,而设置过小则可能限制有效读取较大请求的能力。 该指令以大小值作为参数,可以用字节(例如 1k、2m)来定义要缓冲的最大数据量。根据应用需求和预期请求大小调整此值,对于实现最佳的 NGINX 性能和资源管理至关重要。
配置示例
http {
http2_body_preread_size 64k;
}⚠
确保指定的缓冲区大小足以应对预期的请求大小,因为不足可能导致处理错误。
⚠
注意资源限制;将大小设置得过高会导致内存使用增加,可能引起应用程序不稳定。