在 Azure EventHubClient的文档中,有两种 发送一批数据的方法,每种方法都有下面的注释,如果被忽略,则会抛出MessageSizeExceededException 。
您应该确保 eventDataList 的总序列化大小小于一次事件数据传输的大小限制,默认为 256k。
编程指南中存在类似的警告
如何IEnumerable<EventData> eventDataList
确定的序列化大小?
假设您不询问 EventData ,传递给每个EventData的字节大小很容易确定。但是,EventData 的序列化形式可能包括示例中使用的分区键和用户属性。
data.Properties.Add("Type","Telemetry_" + DateTime.Now.ToLongTimeString());
目前,我唯一的选择似乎是对批量大小保守。