Что такое Service Broker в SQL Server?

Что такое Service Broker в SQL Server и имеет ли смысл включать его в простой базе данных, а не в распределенной базе данных?

3 ответов


SQL Service broker - это механизм расширения, позволяющий ставить события в очередь для асинхронной обработки.

нет никакого внутреннего вреда в включении брокера, если он не используется, он будет просто простаивать.

Он работает как в простых, так и в распределенных DBs. Простой вариант использования-очередь регистрации. Мы использовали его на клиенте для очереди xml-сообщений для асинхронной обработки. Поэтому мы нажимаем xml на InitatorQueue, а затем служба вытаскивает их из очереди, извлеките некоторые необходимые атрибуты через xpath и вставьте их в таблицу сохраняемости в нашей базе данных.

вот хорошая ссылка


Service Broker-это система обмена сообщениями, встроенная в компонент SQL server db engine. Вот некоторые статьи, которые вы можете прочитать, чтобы увидеть, как это работает.

централизованный асинхронный аудит с помощью Service Broker
централизованный асинхронный аудит между экземплярами и серверами с помощью Service Broker
как устранить неполадки Service Broker


Service Broker-это асинхронная система обмена сообщениями. Это позволяет отправить сообщение в очередь. Затем какой-то рабочий процесс принимает сообщение. Нет никаких гарантий относительно заказа, или когда, сообщение будет принято. Но SQL Server гарантирует, что обработка сообщений происходит транзакционным способом.

асинхронный мессенджер-одна из самых тяжелых архитектур. Вы должны тщательно рассмотреть, стоит ли добавленная стоимость сложность.