gpt4 book ai didi

compression - aws sns 发布压缩有效负载

转载 作者:行者123 更新时间:2023-12-05 08:22:56 27 4
gpt4 key购买 nike

可以发布到 AWS-SNS 的消息的最大大小限制为 256KB。我们可以使用 GZIP 压缩消息并发送发布压缩消息来克服大小限制吗?

最佳答案

您可以 gzip 消息正文 -- 但是 -- SNS 消息正文仅支持 UTF-8 字符数据。 Gzipped 数据是二进制的,因此它不直接与 SNS 兼容,因为并非每个可能的字节序列也是有效的 UTF-8 字符序列。

因此,在对有效负载进行 gzip 压缩后,您需要使用 base-64 等方案对该二进制数据进行编码。 Base-64 编码任意二进制数据(每字节 8 位)仅使用 64(即 2^6,有效地给出每字节 6 位)符号,因此字节数膨胀了 8/6 (133%)编码。这意味着 192KB 的二进制数据编码为 256KB 的 base-64 编码数据,因此消息的最大允许大小经过 gzip 变为 192K(因为 SNS 限制为 256KB)。但是所有 base-64 符号都是有效的单字节 UTF-8 字符,这是这种编码如此常用的一个重要原因,尽管它的大小增加了。那,以及 gzip 通常具有远高于 1.33:1 的压缩比(这是 gzip + base-64 的盈亏平衡点)这一事实。

但是如果您的消息将 gzip 压缩到 192K 或更低,这肯定适用于 SNS(以及 SQS,它们具有相同的字符集和大小限制)。

关于compression - aws sns 发布压缩有效负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54224029/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com