Невозможно превзойти 1,2 МБ / с выхода на процесс независимо от TU - PullRequest
0 голосов
/ 11 декабря 2018

Я пишу в концентраторы событий из основного приложения .Net в C #.Рассматриваемый EH максимально подходит для тестирования - 32 раздела и 20 TU.Проблема в том, что я не могу выйти за пределы 1,2 МБ / с из одного процесса / EventHubClient.Я пробовал следующие методы:

  1. Отдельные неразделенные посылки
  2. Несколько отправок без разбиения на части с использованием SendAsync (IEnum)
  3. Несколько отправок без разбиения на части с использованием CreateBatches
  4. Несколько разделенных отправок с использованием отдельных CreateBatches
  5. Несколько разделенных отправок с использованием PartitionedSenders

В настоящее время я использую последний метод, разбивая мои данные на разделы, чтобы выбратьисправить отправителя, а затем разделить на группы сообщений <= 1 МБ, чтобы создать задачу для каждого (раздел, блок) и выполнить Task.WhenAll для выполнения всех отправок.Кажется, это лучшее, что я могу сделать, но, тем не менее, я получаю только около 1,2 МБ / с.Нужно ли мне также создавать несколько EventHubClients со своими собственными PartitionSenders, чтобы выводить данные достаточно быстро?(Заметьте, что меня не душат, и ошибок нет - выход кажется ограниченным.) </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...