3

发布到 Azure EventGrid 实例的某些消息会导致413 Payload Too Large错误。文档对此非常清楚

将事件发布到事件网格主题时,该数组的总大小最大为 1 MB。数组中的每个事件限制为 64 KB。如果事件或数组大于大小限制,您会收到响应 413 Payload Too Large。

不幸的是,我遇到这个问题太晚了,直到我在生产中遇到错误时才知道这个事件大小限制。减小正文大小是要走的路,因为我知道消息的占用空间应该很小。他们中的大多数是。但是对于少数失败的消息,它需要大量的管道和架构更改。

在涵盖此内容之前,Azure EventGrid 中是否有办法合理地增加 64kb 限制(例如增加到 128kb),尽管需要设置、更高的计划或解决方法?直到这可以通过代码更改正确覆盖。

4

2 回答 2

2

截至 2019 年 5 月底,正式宣布事件网格现在支持最大 1MB 的事件。为了使用公告状态:

... 无需更改配置,这将适用于现有的事件订阅。要尝试一下,只需推送更大的事件。我们的 GA SLA 仍将涵盖 64 KB 以下的所有内容。

这得到了现在正式提到的文档的支持:

... 在通用可用性 (GA) 中支持 64 KB。对 1 MB 的支持目前处于预览阶段。

虽然还不是 GA,但它非常有前途并且已经可用。这为我回答了最初的问题。

于 2019-07-29T13:17:56.467 回答
1

64KB 限制是硬限制。你无法改变这一点。您可以使用声明检查模式将事件数据卸载到存储并在收到消息时读取它。

于 2018-11-07T06:00:32.810 回答