При пакетной отправке событий в концентраторах событий Azure, как можно рассчитать общий размер сообщения?

У меня есть эта проблема, когда я читаю сообщения с SQL-сервера (данные могут отличаться, некоторые поля - varchar (max)) и пакетная отправка их путем сериализации в JSON Azure Event Hubs. Механизм пакетной отправки имеет ограничение в 250 КБ, легко ли проверить размер списка данных о событиях, который передается перед отправкой? В большинстве случаев данные крошечные, поэтому я хотел бы разделить несколько сообщений. Как я могу узнать, какого размера будет полезная нагрузка. Я действительно не хочу считать символы и рассчитывать размер, и думаю, что есть способ лучше, с чем вы, ребята, можете помочь?


person joatmom1    schedule 11.05.2017    source источник


Ответы (2)


Если вы используете .NET SDK WindowsAzure.ServiceBus, вы можете использовать Serialized​Size​In​Bytes свойство (см. Документацию). Затем просуммируйте их для партии.

К сожалению, я не вижу этого в новом клиенте концентраторов событий Azure для .NET .

person Mikhail Shilkov    schedule 11.05.2017

Вы можете использовать функцию TryAdd, доступную в EventHub SDK.

person Rahul    schedule 07.02.2018