Поделиться через


Премиум-уровень службы обмена сообщениями Service Bus

Обмен сообщениями через служебную шину включает такие сущности, как очереди и темы, а также объединяет возможности корпоративного обмена сообщениями с расширенной семантикой публикаций и подписок в масштабе облака. Обмен сообщениями через служебную шину используется в качестве средства коммуникации во многих сложных облачных решениях.

Обмен сообщениями через служебную шину уровня Премиум позволяет выполнить распространенные просьбы клиентов, связанные с масштабом, производительностью и доступностью критически важных приложений. Мы рекомендуем использовать уровень "Премиум" для рабочих сценариев. Хотя наборы функций почти идентичны, стандартные и премиум-уровни службы обмена сообщениями Service Bus предназначены для обслуживания различных сценариев использования.

Некоторые высокоуровневые различия представлены в следующей таблице.

Критерии Премиум Стандарт
Пропускная способность Высокая пропускная способность Переменная пропускная способность
Производительность Прогнозируемая производительность Переменная задержка
Цены Фиксированные цены Оплата по мере использования с переменной стоимостью
Масштаб Возможность увеличения и уменьшения масштаба рабочей нагрузки Н/П
Размер сообщения Размер сообщения до 100 МБ. Дополнительные сведения см. в разделе Поддержка больших сообщений. Размер сообщения до 256 КБ

Обмен сообщениями через служебную шину ценовой категории "Премиум" обеспечивает изоляцию ресурсов на уровне процессора и памяти, чтобы рабочая нагрузка каждого клиента выполнялась изолированно. Контейнер ресурса называется единицей обмена сообщениями. Для каждого премиального пространства имен выделяется хотя бы одна единица обмена сообщениями. Для каждого пространства имен служебной шины уровня "Премиум" можно приобрести 1, 2, 4, 8 или 16 единиц обмена сообщениями. Одна рабочая нагрузка или сущность может охватывать несколько единиц обмена сообщениями, количество которых можно менять. В результате вы получаете решение на базе служебной шины с прогнозируемой и повторяемой производительностью.

Это не только более прогнозируемая и доступная производительность, но и быстрее. Пиковая производительность достигается намного быстрее с помощью обмена сообщениями уровня "Премиум", чем на стандартном уровне.

Технические различия в обмене сообщениями уровня "Премиум"

В следующих разделах рассматриваются некоторые различия между уровнями обмена сообщениями уровня "Премиум" и "Стандартный".

Экспресс-сущности

Так как обмен сообщениями класса Premium выполняется в изолированной среде выполнения, экспресс-сущности не поддерживаются в пространствах имен класса Premium. Экспресс-сущность временно хранит сообщение в памяти, после чего записывает его в постоянное хранилище. Если у вас есть код, который работает в стандартном режиме обмена сообщениями, и вы хотите перенести его на премиум-уровень, убедитесь, что функция экспресс-сущности отключена.

Использование ресурсов обмена сообщениями уровня "Премиум"

Как правило, любая операция с сущностью может привести к использованию ЦП и памяти. Вот примеры этих операций:

  • Операции управления, такие как операции создания, извлечения, обновления и удаления (CRUD) в очередях, разделах и подписках.
  • Операции среды выполнения (отправка и получение сообщений)
  • Операции мониторинга и оповещений

При этом за дополнительное использование ЦП и памяти не взимается плата сверху. Для уровня обмена сообщениями уровня "Премиум" существует отдельная цена для единицы сообщений.

Использование ЦП и памяти отслеживается и отображается по ряду следующих причин:

  • обеспечить прозрачность работы внутренних компонентов системы;
  • понимание объема приобретенных ресурсов
  • Планирование емкости, которое помогает решить увеличить или уменьшить объем ресурсов.

Сколько единиц обмена сообщениями требуется?

При создании пространства имен уровня Premium в Служебной Шине Azure укажите количество единиц обмена сообщениями. Эти единицы обмена сообщениями являются выделенными ресурсами и предназначены для пространства имен. Если секционирование включено в пространстве имен, единицы обмена сообщениями распределяются по секциям одинаково.

Количество единиц обмена сообщениями, выделенных для пространства имен служебной шины класса Premium, можно динамически настроить, учитывая изменение (увеличение или уменьшение) рабочих нагрузок.

Выбирая количества единиц обмена сообщениями для архитектуры необходимо учитывать ряд факторов.

  • Начните с 1 или 2 единиц обмена сообщениями, выделенных вашему пространству имен, или 1 единицу сообщения на секцию.
  • Изучите метрики использования ЦПУ в метриках использования ресурсов для вашего пространства имен.
    • Если загрузка ЦП ниже 20%, вы можетеуменьшить количество единиц обмена сообщениями, выделенных для пространства имен.
    • Если использование ЦП превышает 70%, приложение получает преимущества от увеличения числа единиц обмена сообщениями, выделенных вашему пространству имен.

Сведения о настройке пространства имен служебной шины для автоматического масштабирования (увеличения или уменьшения количества единиц обмена сообщениями) см. в статье об автоматическом обновлении единиц обмена сообщениями.

Примечание.

Масштабирование ресурсов, выделенных для пространства имен, может быть либо упреждающим, либо реактивным.

  • Упреждающие действия: Если ожидается дополнительная рабочая нагрузка (в связи с сезонностью или, исходя из тенденций), вы можете заранее выделить больше единиц обмена сообщениями пространству имен, до того как рабочие нагрузки увеличатся.

  • Реактивное. Если в результате изучения метрик использования ресурсов определены дополнительные рабочие нагрузки, то пространству имен могут выделяться дополнительные ресурсы в ответ на растущие требования.

Счётчики учета для Service Bus измеряются почасово. В случае увеличения масштаба вы оплачиваете только фактическое время (в часах) использования дополнительных ресурсов.

Начало работы с обменом сообщениями уровня "Премиум"

Начать пользоваться премиальным обменом сообщениями просто, и это похоже на стандартный обмен сообщениями. Начните с создания пространства имен на портале Azure. В разделе Ценовая категория выберите Премиум. Выберите "Просмотреть полные сведения о ценах", чтобы просмотреть дополнительные сведения о каждом уровне.

Снимок экрана: выбор уровня

Вы можете также создать пространство имен уровня "Премиум", используя шаблоны Azure Resource Manager.

Поддержка больших сообщений

Пространства имен в Azure Service Bus премиум-уровня обеспечивают возможность отправки сообщений с большим объемом данных до 100 МБ. Эта функция в первую очередь предназначена для наследственных рабочих нагрузок, которые использовали сообщения с более крупными полезными данными на других корпоративных брокерах обмена сообщениями и ищут простой переход на Azure Service Bus.

Ниже приведены некоторые рекомендации по отправке больших сообщений в Служебной шине Azure.

  • Поддерживается только в пространствах имен Служебной шины Azure уровня "Премиум".
  • Поддерживается только при использовании протокола расширенной очереди сообщений (AMQP). Не поддерживается при использовании протоколов SBMP или HTTP на уровне "Премиум", максимальный размер сообщения для протоколов SBMP и HTTP составляет 1 МБ.
  • Поддерживается при использовании пакета SDK клиента Java Message Service (JMS) 2.0 и пакетами SDK клиентов на других языках.
  • Отправка больших сообщений приводит к снижению пропускной способности и увеличению задержки.
  • Хотя поддерживаются полезные данные сообщения размером 100 МБ, рекомендуется уменьшать размер полезных данных сообщений насколько возможно, чтобы обеспечить надежную производительность пространства имен Service Bus.
  • Максимальный размер сообщения применяется только к сообщениям, отправляемым в очередь или раздел. Ограничение размера не применяется для операции получения. Это позволяет обновить максимальный размер сообщения для данной очереди (или раздела).
  • Пакетная обработка не поддерживается.

30 сентября 2026 года мы прекратим поддержку протокола SBMP для Служебной шины Azure, и вы больше не сможете использовать этот протокол. Перейдите на последние библиотеки SDK Служебной шины Azure, используя протокол AMQP, который предлагает критически важные обновления безопасности и улучшенные возможности, до указанной даты.

Для получения дополнительной информации см. объявление о прекращении поддержки.

Включение поддержки больших сообщений для новой очереди (или раздела)

Чтобы включить поддержку больших сообщений, задайте максимальный размер сообщения при создании новой очереди (или раздела), как показано на следующем рисунке:

Снимок экрана: включение поддержки больших сообщений для существующей очереди.

Включение поддержки больших сообщений для существующей очереди (или раздела)

Вы также можете включить поддержку больших сообщений для существующих очередей (или тем), обновив максимальный размер сообщения в обзоре для этой конкретной очереди (или раздела), как показано на следующем рисунке.

Снимок экрана: страница

Безопасность сети

Следующие функции безопасности сети доступны только на уровне "Премиум". Дополнительные сведения см. в разделе "Безопасность сети".

Настройка брандмауэра IP с помощью портал Azure доступна только для пространств имен уровня "Премиум". Однако можно настроить правила брандмауэра IP для других уровней с помощью шаблонов Azure Resource Manager, CLI, PowerShell или REST API. Дополнительные сведения см. в разделе "Настройка брандмауэра IP-адресов".

Шифрование неактивных данных

Все данные, хранящиеся в подсистеме хранения, шифруются с помощью ключей, управляемых корпорацией Майкрософт. Если вы используете собственный ключ (также называемый управляемым клиентом ключ), данные по-прежнему шифруются с помощью ключа, управляемого корпорацией Майкрософт, но в дополнение к ключу, управляемому корпорацией Майкрософт, шифруются с помощью ключа, управляемого клиентом. Эта возможность позволяет создавать, менять, отключать и отменять доступ к управляемым клиентом ключам, которые используются для шифрования ключей, управляемых корпорацией Майкрософт. Включение функции ключа, управляемого клиентом, — это однократный процесс настройки пространства имен. Для получения дополнительной информации см. в разделе Шифрование данных Azure Service Bus в состоянии покоя.

Секционирование

Существуют некоторые различия между уровнями "Стандартный" и "Премиум", когда речь идет о секционированиях.

  • Секционирование доступно при создании сущностей для всех очередей и разделов в базовых или стандартных номерах SKU. Пространство имен может содержать как секционированные, так и непартиментированные сущности. Секционирование доступно при создании пространства имен для уровня "Премиум", а все очереди и разделы в этом пространстве имен секционируются. Все ранее перенесенные секционированные сущности в пространствах имен класса Premium продолжают работать должным образом.
  • Если разделение включено в вариантах SKU "Базовый" или "Стандартный", Service Bus создает 16 разделов. Если секционирование включено на уровне "Премиум", во время создания пространства имен указывается количество секций.

Дополнительные сведения см. в разделе "Секционирование" в Service Bus.

Геокатастасизм и восстановление

Служебная шина Azure распространяет риск катастрофических сбоев отдельных компьютеров или даже полных стоек между кластерами, охватывающими несколько доменов сбоев в центре обработки данных, и реализует прозрачные механизмы обнаружения сбоев и отработки отказа, таким образом, что служба продолжает работать в пределах гарантированного уровня обслуживания и, как правило, без заметных прерываний при возникновении таких сбоев. Пространство имен уровня "Премиум" может содержать два или более блоков сообщений, и эти блоки сообщений распределяются по нескольким доменам отказов в центре обработки данных, поддерживая модель кластера с активным активным использованием служебной шины.

Для пространства имен уровня "Премиум" риск сбоя дополнительно распределяется по трем зонам доступности, физически разделенным объектам, и служба имеет достаточно резервных мощностей, чтобы мгновенно справиться с полной, катастрофической потерей центра обработки данных. Модель полностью активного кластера Azure Service Bus в домене отказов вместе с поддержкой зон доступности превосходит любые локальные продукты брокеров сообщений по устойчивости к серьезным сбоям оборудования и даже катастрофическим потерям всего центра обработки данных. Тем не менее могут возникнуть серьезные ситуации с широкомасштабными повреждениями, обеспечить защиту от которых не в силах даже эти меры.

Функция служебная шина для восстановления после геоаварий (Geo-DR) предназначена для упрощения процесса восстановления после аварии подобного масштаба и постоянного отказа от региона Azure, который потерпел бедствие, при этом не требуя изменения конфигурации приложения. Отказ от региона Azure обычно включает несколько служб, и эта функция в первую очередь направлена на сохранение целостности составной конфигурации приложения. Эта функция доступна глобально для служебная шина уровня "Премиум".

Функция гео-восстановления гарантирует, что вся конфигурация пространства имен (сущности, настройки, свойства) непрерывно реплицируется из основного пространства имен во вторичное пространство имен, с которым оно связано, и позволяет в любой момент инициировать единоразовую операцию переключения с основного на вторичное пространство имен. Переключение на резервный переключает выбранное имя псевдонима для пространства имен на вторичное пространство имен, а затем разрывает связывание. Резервное переключение осуществляется почти мгновенно после инициации.

Дополнительные сведения см. в разделе Географическое аварийное восстановление в служебной шине Azure.

Георепликация

Функция Георепликации — это один из вариантов изоляции приложений в Служебной шине Azure от сбоев и аварий, обеспечивающий репликацию как метаданных (сущностей, конфигураций, свойств), так и данных (данных сообщения и изменения свойств / состояния сообщения), тогда как функция Гео-аварийного восстановления, описанная в предыдущем разделе, реплицирует только метаданные.

Функция георепликации гарантирует, что метаданные и данные пространства имен постоянно реплицируются из основного региона в один или несколько дополнительных регионов.

  • Очереди, разделы, подписки, фильтры.
  • Данные, которые находятся в сущностях.
  • Все изменения состояния и изменения свойств, выполненные в отношении сообщений в пространстве имен.
  • Конфигурация пространства имен.

Эта функция позволяет в любое время продвигать любой дополнительный регион в основной. Повышение вторичного переназначения имени пространства имен в выбранном дополнительном регионе и переключение ролей между основным и вторичным регионом. Акция начинается почти мгновенно после запуска.

Поддержка службы сообщений Java (JMS)

Уровень "Премиум" поддерживает JMS 1.1 и JMS 2.0. Дополнительные сведения см. в разделе Как использовать JMS 2.0 с Служебной шиной Premium Azure.

Стандартный уровень поддерживает только подмножество JMS 1.1, ориентированное на очереди. Дополнительные сведения см. в статье «Использование Java Message Service 1.1 со стандартным уровнем Azure Service Bus».

Следующие шаги

См. следующую статью: автоматическое обновление единиц обмена сообщениями.