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


SQL Server Service Broker

Компонент SQL Server Service Broker обеспечивает встроенную поддержку обмена сообщениями и очередей приложений в ядре СУБД SQL Server. Это упрощает разработчикам создавать сложные приложения, использующие компоненты ядра СУБД для обмена данными между разрозненных баз данных. Разработчики могут использовать Service Broker для легкой сборки распределенных и надежных приложений.

Разработчики приложений, использующие Service Broker, могут распределять рабочие нагрузки данных между несколькими базами данных без программирования сложных внутренних данных и обмена сообщениями. Это снижает нагрузку на разработку и тестирование, так как Компонент Service Broker обрабатывает пути связи в контексте беседы. Кроме того, это повышает производительность. Например, базы данных начального уровня, поддерживающие веб-сайты, могут записывать информацию и отправлять ресурсоемкие задачи в очередь баз данных внутреннего уровня. Service Broker гарантирует, что все задачи управляются в контексте транзакций для обеспечения надежности и технической согласованности.

Где найти документацию по компоненту Service Broker?

Справочная документация по Service Broker включена в документацию по SQL Server 2014. В эту справочную документацию входят следующие разделы:

См. ранее опубликованную документацию по концепциям Service Broker и задачам разработки и управления. Эта документация не воспроизводится в документации по SQL Server 2014 из-за небольшого количества изменений в Service Broker в SQL Server 2014.

Что нового в Service Broker

В SQL Server 2014 не появились существенные изменения. В SQL Server 2012 появились следующие изменения.

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

Синтаксис инструкции SEND (Transact-SQL) расширен, чтобы включить многоадресную рассылку за счет поддержки нескольких дескрипторов диалога.

Очереди показывают время постановки сообщения в очередь

Очереди содержат новый столбец message_enqueue_time, в котором показано время нахождения сообщения в очереди.

Можно отключить обработку сообщений-ядов

Теперь в инструкциях CREATE QUEUE (Transact-SQL) и ALTER QUEUE (Transact-SQL) можно включать или отключать обработку опасных сообщений путем добавления предложения POISON_MESSAGE_HANDLING (STATUS = ON | OFF). Представление каталога sys.service_queues теперь содержит столбец is_poison_message_handling_enabled, указывающий, включена ли обработка ядовитых сообщений.

Поддержка AlwaysOn в Service Broker

Дополнительную информацию см. в статье Service Broker с группами доступности AlwaysOn (SQL Server).