SQL Server Service BrokerSQL Server Service Broker

SQL ServerSQL Server Service BrokerService Broker bietet systemeigene Unterstützung für Messaging- und Warteschlangenanwendungen in SQL Server-DatenbankmodulSQL Server Database Engine. Service BrokerService Broker provides native support for messaging and queuing applications in the SQL Server-DatenbankmodulSQL Server Database Engine. Dies erleichtert Entwicklern das Erstellen anspruchsvoller Anwendungen, die die DatenbankmodulDatabase Engine -Komponenten für die Kommunikation zwischen verschiedenartigen Datenbanken verwenden.This makes it easier for developers to create sophisticated applications that use the DatenbankmodulDatabase Engine components to communicate between disparate databases. Entwickler können Service BrokerService Broker verwenden, um verteilte und zuverlässige Anwendungen auf einfache Weise zu erstellen.Developers can use Service BrokerService Broker to easily build distributed and reliable applications.

Anwendungsentwickler, die Service BrokerService Broker verwenden, können Datenarbeitsauslastungen zwischen mehreren Datenbanken verteilen, ohne komplizierte Besonderheiten von Kommunikation und Messaging programmieren zu müssen.Application developers who use Service BrokerService Broker can distribute data workloads across several databases without programming complex communication and messaging internals. Dadurch werden die Entwicklungs- und die Testarbeit reduziert, da Service BrokerService Broker die Kommunikationspfade im Kontext einer Konversation behandelt.This reduces development and test work because Service BrokerService Broker handles the communication paths in the context of a conversation. Außerdem wird die Leistung verbessert.It also improves performance. Front-End-Datenbanken, die Websites unterstützen, können z. B. Informationen aufzeichnen und prozessintensive Tasks an die Warteschlange von Back-End-Datenbanken senden.For example, front-end databases supporting Web sites can record information and send process intensive tasks to queue in back-end databases. Service BrokerService Broker stellt sicher, dass alle Tasks im Kontext von Transaktionen verwaltet werden, um die Zuverlässigkeit und technische Konsistenz zu gewährleisten. ensures that all tasks are managed in the context of transactions to assure reliability and technical consistency.

Wo finde ich die Dokumentation für Service Broker?Where is the documentation for Service Broker?

Die Referenzdokumentation für Service BrokerService Broker ist in der SQL Server 2017SQL Server 2017 -Dokumentation enthalten.The reference documentation for Service BrokerService Broker is included in the SQL Server 2017SQL Server 2017 documentation. Diese Referenzdokumentation enthält die folgenden Abschnitte:This reference documentation includes the following sections:

Neues in Service BrokerWhat's new in Service Broker

In SQL Server 2017SQL Server 2017wurden keine wesentlichen Änderungen eingeführt.No significant changes are introduced in SQL Server 2017SQL Server 2017. Für SQL Server 2012SQL Server 2012wurden die folgenden Änderungen eingeführt.The following changes were introduced in SQL Server 2012SQL Server 2012.

Nachrichten können an mehrere Zieldienste gesendet werden (Multicast)Messages can be sent to multiple target services (multicast)

Die Syntax der SEND (Transact-SQL)-Anweisung wurde erweitert, um mehrere Konversationshandles zu unterstützen und so die Multicastübermittlung zu ermöglichen.The syntax of the SEND (Transact-SQL) statement has been extended to enable multicast by supporting multiple conversation handles.

Warteschlangen machen die Nachrichtenwartezeit verfügbarQueues expose the message enqueued time

Warteschlangen verfügen über eine neue message_enqueue_time-Spalte, in der angezeigt wird, wie lange eine Nachricht in der Warteschlange war.Queues have a new column, message_enqueue_time, that shows how long a message has been in the queue.

Behandlung nicht verarbeitbarer Nachrichten kann deaktiviert werdenPoison message handling can be disabled

Die Anweisungen CREATE QUEUE (Transact-SQL) und ALTER QUEUE (Transact-SQL) bieten nun die Möglichkeit, die Behandlung von nicht verarbeitbaren Nachrichten zu aktivieren oder deaktivieren, indem die Klausel POISON_MESSAGE_HANDLING (STATUS = ON | OFF) hinzugefügt wird.The CREATE QUEUE (Transact-SQL) and ALTER QUEUE (Transact-SQL) statements now have the ability to enable or disable poison message handling by adding the clause, POISON_MESSAGE_HANDLING (STATUS = ON | OFF). Die sys.service_queues-Katalogsicht enthält jetzt eine is_poison_message_handling_enabled-Spalte, in der angezeigt wird, ob die Behandlung nicht verarbeitbarer Nachrichten aktiviert oder deaktiviert ist.The catalog view sys.service_queues now has the column is_poison_message_handling_enabled to indicate whether poison message is enabled or disabled.

AlwaysOn-Unterstützung in Service BrokerAlways On support in Service Broker

Weitere Informationen finden Sie unter Service Broker mit AlwaysOn-Verfügbarkeitsgruppen (SQL Server).For more information, see Service Broker with Always On Availability Groups (SQL Server).