竞价流量压缩
OpenRTB 竞价请求和竞价响应的 HTTP 压缩支持
CloudX 支持对与需求合作伙伴交换的 OpenRTB 流量使用 gzip 和 zstd 压缩。
- 竞价响应: 检查每个请求的
Accept-Encoding标头,仅使用其中列出的编码压缩响应。 - 竞价请求: CloudX 按竞价端点压缩请求体,需与 CloudX 协调启用。
竞价请求
启用压缩后,CloudX 会压缩 OpenRTB JSON 请求体,并通过 HTTP Content-Encoding 标头标明压缩算法:
Content-Encoding: zstd
Content-Type: application/json竞价端点必须先解压请求体,再解析 OpenRTB 请求。
每个竞价请求都会声明 CloudX 对该次请求接受的响应编码。默认端点配置会发送:
Accept-Encoding: gzip, zstd竞价响应
请检查每个请求的 Accept-Encoding,并仅使用其中列出的编码压缩响应。端点配置可能会改变该声明;如果请求未携带此标头,必须发送未压缩响应。请将 Content-Encoding 设置为实际使用的算法:
Content-Encoding: zstd
Content-Type: application/json请勿发送缺少相应 Content-Encoding 标头的压缩响应体。
竞价响应的压缩体上限为 17 MiB,解压后上限为 16 MiB。超过限制的响应会被拒绝,且不会以未压缩方式重试。
失败处理和回滚
如果响应使用不受支持的编码、压缩响应体缺少 Content-Encoding 标头或标头与响应体不匹配,或者响应体无法解压,则该响应将被视为无效并排除在竞价之外。CloudX 不会自动以未压缩方式重试该响应。
如果压缩响应失败,您的端点可以自行恢复:直接发送未压缩的 OpenRTB JSON,或改用该次请求所声明的其他编码。如需将压缩的竞价请求恢复为 gzip 或未压缩流量,请联系 CloudX。
启用方式
当请求声明某种编码时,响应压缩为自助式:使用该编码压缩响应,并设置相应的 Content-Encoding 即可。如需接收压缩的竞价请求,请联系 CloudX,为您的竞价端点协调启用和验证流程。现有集成仍支持 gzip。