消息不能大于 65536 字节
Messages cannot be larger than 65536 bytes
我正在使用 Azure Queue 发送电子邮件。但是上次我得到关于队列大小限制的异常,即使在检查消息大小之后也是如此。
虽然消息的最大大小确实可以是 64KB,但是 Azure 使用 UTF16 编码来存储数据,因此对于您提供的每个数据字节,Azure 存储使用 2 个字节来存储该数据。
这意味着您基本上可以在 Azure 队列中的一条消息中存储多达 32KB 的数据。因为您超过了这个 32KB 的限制,所以您收到了这个错误。
字符串消息将在发送前进行 Base64 编码,从而将其长度增加大约三分之一。
因此,您可以提交的消息字符串的最大长度为 49152,相当于 65536,这是允许的最大值。
计算Base64编码长度的公式可以在这里找到:
我正在使用 Azure Queue 发送电子邮件。但是上次我得到关于队列大小限制的异常,即使在检查消息大小之后也是如此。
虽然消息的最大大小确实可以是 64KB,但是 Azure 使用 UTF16 编码来存储数据,因此对于您提供的每个数据字节,Azure 存储使用 2 个字节来存储该数据。
这意味着您基本上可以在 Azure 队列中的一条消息中存储多达 32KB 的数据。因为您超过了这个 32KB 的限制,所以您收到了这个错误。
字符串消息将在发送前进行 Base64 编码,从而将其长度增加大约三分之一。
因此,您可以提交的消息字符串的最大长度为 49152,相当于 65536,这是允许的最大值。
计算Base64编码长度的公式可以在这里找到: