【问题标题】:How to increase message limit size of azure event hub from 1 MB to send 4 MB?如何将 azure 事件中心的消息限制大小从 1 MB 增加到发送 4 MB?
【发布时间】:2021-01-01 18:20:11
【问题描述】:

我要求每秒发送 1,00,000 批记录。我在实验后得到的是 azure 事件中心的字节数限制为 10,00,000 个事件。我的每条记录是 145 字节,我必须发送的总记录是 1,00,000,正如我上面已经提到的。所以,在数学上, 145 * 1,00,000 = 14500000 字节我想每秒发送的数据。

有人可以帮我解决这个问题吗?

现在,要发送此数据,我正在使用 azure 事件中心 SDK 并使用以下方法尝试发送数据: 等待 eventHubClient.SendAsync(ed); (ed 是 EventData 的对象,它有字节 UTf 8 格式的记录。)

但是,当我运行代码并执行上述行时(SendAsync () ) 我收到以下错误:

$exception  
{Microsoft.Azure.EventHubs.MessageSizeExceededException: The received message (delivery-id:0, size:3922220 bytes) exceeds the limit (1046528 bytes) currently allowed on the link.

【问题讨论】:

    标签: azure azure-eventhub


    【解决方案1】:

    你不能改变它。最大大小 1M 是设计使然,您可以考虑减小消息的大小。

    您可以查看参考herehere

    【讨论】:

    • 1M 字节正确吗?我还研究了 Microsoft 文档,发现 Batch 大小可以增加到 4MB。看看这个 --> docs.microsoft.com/en-us/dotnet/api/…
    • @TanmaySharma,我们现在正在使用这个 nuget 包 Microsoft.Azure.EventHubs。所以对于tryAdd,我正在看这个one
    • 感谢您消除我的困惑。那么,上述问题的解决方案是什么,即每秒发送 14500000 字节的数据? .我应该对它们进行批处理然后使用 EventHubClient.SendBatch(IEnumerable) 方法还是尝试增加吞吐量单位和 Event Hub 命名空间的分区?
    • 您可以通过增加吞吐量单位 (TU) 来增加大小。
    猜你喜欢
    • 1970-01-01
    • 2017-01-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-14
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    相关资源
    最近更新 更多