Краткое руководство. Отправка и получение больших сообщений с помощью Центры событий Azure (предварительная версия)
Статья
Из этого краткого руководства вы узнаете, как отправлять и получать большие сообщения (до 20 МБ) с помощью Центры событий Azure. Если вы не знакомы с Центрами событий, ознакомьтесь с общими сведениями о Центрах событий, прежде чем перейти к этому краткому руководству.
Необходимые компоненты
Для работы с данным руководством необходимо следующее:
Автономный масштабируемый выделенный кластер, пространство имен центров событий и концентратор событий. Первым шагом в соответствии с этим предварительным условием является использование портал Azure для создания выделенного кластера и пространства имен внутри кластера. Чтобы создать концентратор событий, см. Краткое руководство. Создание концентратора событий с помощью портала Azure. Этот шаг можно пропустить, если у вас уже есть масштабируемый выделенный кластер.
Примечание
Поддержка больших сообщений, в настоящее время в общедоступной предварительной версии, доступна исключительно с определенными центрами событий самостоятельно обслуживаемых кластеров. Потоковая передача больших сообщений с этими кластерами не взимает дополнительных расходов.
Настройка выделенного кластера Центров событий
Для потоковой передачи больших сообщений необходимо настроить масштабируемый выделенный кластер самостоятельно.
В портал Azure перейдите в раздел "Параметры" для выделенного кластера. В разделе "Параметры" выберите вкладку "Квота".
Убедитесь, что для ключа supportslargemessages только для чтения задано Trueзначение.
Ключ eventhubmaxmessagesizeinbytes можно обновить до подходящего значения в байтах. Допустимый диапазон для этого значения составляет от 1048 576 до 20 971 520 байт.
После сохранения конфигурации вы будете готовы передавать большие сообщения с помощью Центров событий.
Важно!
Потоковая передача больших сообщений поддерживается только с масштабируемыми выделенными кластерами, созданными на основе последней инфраструктуры. Эта возможность отражается ключом Supportslargemessages .
Если значение кластера равно false, оно не будет поддерживать потоковую передачу больших сообщений. Чтобы включить эту функцию, необходимо повторно создать кластер.
Потоковая передача больших сообщений с помощью Центров событий
Центры событий позволяют потоковую передачу больших сообщений до 20 МБ как в пакетах, так и в виде отдельных публикаций. Возможность потоковой передачи больших сообщений или событий не требует изменений клиентского кода, кроме изменения в самом сообщении или событии. Вы можете продолжать отправлять или получать сообщения с помощью любого существующего пакета SDK центров событий или API Kafka для потоковой передачи больших сообщений в Центры событий. Таким образом можно передавать большие сообщения в Центры событий таким же образом, как и для сообщений размером менее 1 МБ.
Обязательно просмотрите любой клиент расширенного протокола очереди сообщений (AMQP) или конфигурацию клиента Kafka, который может ограничить максимальный размер сообщения, который вы передаете в Центры событий. Необходимо обновить время ожидания клиента до более высокого значения для потоковой передачи больших сообщений.
По умолчанию число предварительных выборок клиента AMQP равно 300. Уменьшите это значение, чтобы избежать проблем с памятью на стороне клиента при решении больших сообщений.
Полный справочник по библиотеке .NET см. в документации по пакету SDK.
Узнайте, как использовать Центры событий Azure для надежной обработки потоков данных большого объема, чтобы вы могли кодировать приложения для отправки и получения сообщений через центр.
Создавайте комплексные решения в Microsoft Azure для создания Функции Azure, реализации веб-приложений и управления ими, разработке решений, использующих службу хранилища Azure, и т. д.
В статье описаны ограничения и квоты для Центров событий Azure. Например, количество пространств имен на подписку, количество концентраторов событий на пространство имен.
В этой статье описывается балансировка нагрузки секций между несколькими экземплярами вашего приложения с применением обработчика событий и пакета SDK Центров событий Azure.