快速入门:使用 Azure 事件中心发送和接收大型消息

在本快速入门中,你将了解如何使用 Azure 事件中心发送和接收大型消息(大小上限为 20 MB)。 如果不熟悉事件中心,请参阅 事件中心概述 ,然后再开始。

先决条件

配置事件中心专用群集

若要流式传输大型消息,必须配置自助服务可缩放专用群集。

在 Azure 门户中,前往专用群集的“设置”部分。 在“设置”下,选择“配额”选项卡

显示专用群集的“配额”窗格的屏幕截图。

  • 验证是否已将只读密钥 supportslargemessages 的值设置为 True
  • 可以将密钥 eventhubmaxmessagesizeinbytes 更新为合适的值(以字节为单位)。 此值的可接受范围为 1,048,576 至 20,971,520 字节。

保存配置后,即可使用事件中心流式传输大型消息。

重要

只有基于最新基础结构构建的自助服务可缩放专用群集支持流式传输大型消息。 密钥 Supportslargemessages 反映了此功能。

如果群集值为 false,则不支持流式处理大型消息。 若要启用此功能,必须重新创建群集。 流式传输大型消息不会产生任何额外费用。

使用事件中心流式传输大型消息

符合条件的自助服务事件中心专用群集允许以批和单个发布的形式流式传输高达 20 MB 的大型消息。 可以使用任何现有的事件中心 SDK 或 Kafka API 将大型消息流式传输到事件中心。 对于现有连接,请重启客户端或重新建立用于流传输大型消息的连接。

有关详细信息,请参阅使用 .NET 向事件中心发送事件并从事件中心接收事件

小窍门

请务必检查任何事件中心高级消息队列协议 (AMQP) 客户端或 Kafka 客户端配置,这些配置可能会限制流式传输到事件中心的最大消息大小。 必须将客户端超时更新为更高的值(> 60s),以流式传输大型消息,并根据测试结果对其进行优化以满足工作负荷需求。

默认情况下,AMQP 客户端预提取计数为 300。 降低此值,以避免在处理大型消息时出现客户端内存问题。

有关完整的 SDK 参考,请参阅 适用于 .NET 的 Azure 事件中心库