unbrotli_buffers

`unbrotli_buffers` 指令设置用于解压 Brotli-encoded 响应时使用的缓冲区数量和大小。

语法unbrotli_buffers number size;
默认值depends on system page size, commonly: `32 4k`;
上下文http, server, location
参数2

说明

unbrotli_buffers 指令在管理 NGINX 如何处理不支持此编码的客户端的 Brotli-encoded 响应时至关重要。该指令接受两个参数:第一个指定缓冲区的数量,第二个定义每个缓冲区的大小。这些缓冲区在解压缩期间用于临时保存 Brotli 数据,然后再发送给客户端。

这些缓冲区的默认行为和大小取决于系统内存页面大小,但通常设置为类似 32 4k 的合理值,表示 32 个缓冲区,每个大小为 4 KB。这样的配置通常有助于在解压较大数据流时在内存使用和性能之间取得平衡。如果响应大多为较大尺寸,可能需要增加缓冲区的数量或大小以提高性能,但这会以更高的内存消耗为代价。

在配置 unbrotli_buffers 时,需要考虑服务器的能力、预期的响应大小以及环境的总体内存限制。使用不足的缓冲区大小来解压较大的有效载荷可能导致性能下降,甚至由于过多的内存分配或 CPU 使用增加而导致服务降级。

配置示例

location /storage/ {
    unbrotli on;
    unbrotli_buffers 32 4k;
}

确保缓冲区的数量及其大小不超过可用内存限制,尤其在高负载情况下。

请注意,增大缓冲区大小可能导致内存消耗增加,在资源受限时可能影响服务器性能。

← 返回所有指令