SB-Messaging-Adapter
Der Service Bus-Adapter (SB-Messaging) wird verwendet, um Service Bus-Entitäten wie Warteschlangen, Themen und Relays zu empfangen und zu senden. Sie können den SB-Messaging-Adapter verwenden, um Ihre lokale BizTalk Server mit Azure zu verbinden.
Ab BizTalk Server 2016 Feature Pack 2 wird Service Bus Premium unterstützt. Beim Konfigurieren eines Sendeports mit diesem Adapter können Sie Nachrichten an partitionierte Warteschlangen und Themen senden.
Wichtig
Der BizTalk-SB-Messaging-Adapter verwendet das SBMP-Protokoll, das Nachrichten bis zu einer maximalen Größe von 1 MB unterstützt. Der BizTalk-Adapter unterstützt das AMQP-Protokoll nicht, das größere Nachrichten verarbeiten kann.
Authentifizieren mit Service Bus
Service Bus bietet zwei Methoden zur Authentifizierung:
- Zugriffssteuerungsdienst (ACS)
- Shared Access Signature (SAS)
Es wird empfohlen, die Sas (Shared Access Signature) zu verwenden, um sich bei Service Bus zu authentifizieren. Der Shared Access Key-Wert wird im Azure-Portal aufgeführt.
Wenn Sie einen Service Bus-Namespace erstellen, wird der Access Control-Namespace (ACS) nicht automatisch erstellt. Um Access Control verwenden zu können, benötigen Sie die Werte Ausstellername und Ausstellerschlüssel dieses Namespaces. Diese Werte sind verfügbar, wenn Sie einen neuen ACS-Namespace mit Windows PowerShell erstellen. Diese Werte werden im Azure-Portal nicht aufgeführt.
Um ACS für die Authentifizierung zu verwenden und die Werte für Ausstellernamen und Ausstellerschlüssel abzurufen, müssen folgende Schritte ausgeführt werden:
Installieren Sie die Azure PowerShell-Cmdlets.
Fügen Sie Ihr Azure-Konto hinzu:
Add-AzureAccount
Geben Sie den Abonnementnamen an zurück:
get-azuresubscription
Wählen Sie Ihr Abonnement aus:
select-azuresubscription <name of your subscription>
Erstellen Sie einen neuen Namespace:
new-azuresbnamespace <name for the service bus> "Location" -CreateACSNamespace $true -NamespaceType Messaging
Beispiel:
new-azuresbnamespace biztalksbnamespace "South Central US" -CreateACSNamespace $true -NamespaceType Messaging
Wenn der neue ACS-Namespace erstellt wird (was einige Minuten dauern kann), werden die Werte IssuerName und IssuerKey im Verbindungszeichenfolge aufgeführt:
Name : biztalksbnamespace Region : South Central US DefaultKey : abcdefghijklmnopqrstuvwxyz Status : Active CreatedAt : 10/18/2016 9:36:30 PM AcsManagementEndpoint : https://biztalksbnamespace-sb.accesscontrol.windows.net/ ServiceBusEndpoint : https://biztalksbnamespace.servicebus.windows.net/ ConnectionString : Endpoint=sb://biztalksbnamespace.servicebus.windows.net/;SharedSecretIssuer=owner;SharedSecretValue=abcdefghijklmnopqrstuvwxyz NamespaceType : Messaging
Anleitungen finden Sie unter New-AzureSBNamespace .
Empfangen von Nachrichten von Service Bus
Erweitern Sie in der BizTalk Server Verwaltungskonsole die BizTalk-Gruppe, dann Anwendungen, und erweitern Sie dann Ihre Anwendung.
Klicken Sie mit der rechten Maustaste auf Empfangsports, wählen Sie Neu aus, und wählen Sie Unidirektionale Empfangsport aus.
Geben Sie ihm einen Namen, und wählen Sie Speicherorte empfangen aus.
Wählen Sie Neu aus, und geben Sie ihr einen Namen. Wählen Sie im Abschnitt Transportdie Option SB-Messaging aus der Dropdownliste Typ und dann Konfigurieren aus.
Konfigurieren Sie die Allgemeinen Eigenschaften:
Option Aufgabe Warteschlangen- oder Abonnement-URL Geben Sie die URL an, an der die Service Bus-Warteschlange bereitgestellt wird. Die URL weist normalerweise das folgende Format auf:
sb://<namespace>.servicebus.windows.net/<queue_name>
Timeout des Öffnungsvorgangs Gibt einen Wert für einen Zeitraum an, der bis zum vollständigen Öffnen eines Kanals zur Verfügung steht.
Standardwert: 1 MinuteTimeout des Schließvorgangs Gibt einen Wert für einen Zeitraum an, der bis zum vollständigen Schließen eines Kanals zur Verfügung steht.
Standardwert: 1 MinuteTimeout empfangen Gibt einen Wert für einen Zeitraum an, der bis zum Abschluss eines Empfangsvorgangs zur Verfügung steht.
Standardwert: 10 MinutenAnzahl der Vorabrufe Gibt die Anzahl der Nachrichten an, die gleichzeitig von der Service Bus-Warteschlange oder einem -Thema empfangen werden. Vorabrufe ermöglichen es dem Warteschlangen- oder Abonnementclient, weitere Nachrichten aus dem Dienst zu laden, wenn er einen Empfangsvorgang ausführt. Der Client speichert diese Nachrichten in einem lokalen Cache. Die Größe des Caches wird durch den Wert der hier angegebenen Eigenschaft Vorabrufwert bestimmt.
Weitere Informationen finden Sie im Abschnitt "Prefetching" unter https://azure.microsoft.com/documentation/articles/service-bus-performance-improvements/
Standardwert: -1Sitzung verwenden Aktivieren Sie dieses Kontrollkästchen, um eine Service Bus-Sitzung zum Empfangen von Nachrichten aus einer Warteschlange oder einem Abonnement zu verwenden. Konfigurieren Sie die Authentifizierungseigenschaften :
Option Aufgabe Access Control-Dienst Wählen Sie diese Option, um ACS für die Authentifizierung zu verwenden, und geben Sie die folgenden Werte an:
– Geben Sie den Service Bus-Access Control Service STS-URI ein. Der URI weist normalerweise das folgende Format auf:
https://<namespace>-sb.accesscontrol.windows.net/
– Geben Sie den Ausstellernamen für den Service Bus-Namespace ein.
– Geben Sie den Ausstellerschlüssel für den Service Bus-Namespace ein.Shared Access Signature (neu ab BizTalk Server 2013 R2) Wählen Sie diese Option, um SAS (Shared Access Signature) für die Authentifizierung zu verwenden, und geben Sie den SAS-Schlüsselnamen und -Schlüsselwert an. Geben Sie auf der Registerkarte Eigenschaften unter Namespace for Brokered Message Properties den Namespace ein, den der Adapter verwendet, um die Brokernachrichteneigenschaften als Nachrichtenkontexteigenschaften für die von BizTalk Server empfangene Nachricht zu schreiben. Wenn Sie die Brokernachrichteneigenschaften heraufstufen möchten, aktivieren Sie das Kontrollkästchen Eigenschaften von Brokernachrichten heraufstufen .
Klicken Sie auf OK.
Wählen Sie Ihren Empfangshandler und die Empfangspipeline aus. Klicken Sie auf OK, um die Änderungen zu speichern. Erstellen eines Empfangsspeicherorts enthält einige Anleitungen.
Senden von Nachrichten an Service Bus
Klicken Sie in der BizTalk Server Verwaltungskonsole mit der rechten Maustaste auf Ports senden, wählen Sie Neu und dann Statischer Unidirektionalen Sendeport aus.
Erstellen eines Sendeports enthält einige Anleitungen.
Geben Sie einen Namen ein. Legen Sie unter Transport den Typ auf SB-Messaging fest, und wählen Sie Konfigurieren aus.
Konfigurieren Sie die Allgemeinen Eigenschaften:
Option Aufgabe Ziel-URL Geben Sie die URL ein, in der die Service Bus-Warteschlange bereitgestellt wird. Die URL weist normalerweise das folgende Format auf:
sb://<namespace>.servicebus.windows.net/<queue_name>
Batchleerungsintervall Gibt einen Wert für ein Zeitintervall an, in dem die an eine Warteschlange oder ein Thema gesendeten Nachrichtenbatches geleert werden. Der Standardwert sind 20 Millisekunden.
Weitere Informationen zur Batchverarbeitung in Bezug auf Service Bus-Warteschlangen und -Themen finden Sie im Abschnitt clientseitige Batchverarbeitung unter https://azure.microsoft.com/documentation/articles/service-bus-performance-improvements.Timeout des Öffnungsvorgangs Gibt einen Wert für einen Zeitraum an, der bis zum vollständigen Öffnen eines Kanals zur Verfügung steht.
Standardwert: 1 MinuteSendetimeout Gibt einen Wert für einen Zeitraum an, der bis zum Abschluss eines Sendevorgangs zur Verfügung steht.
Standardwert: 1 MinuteTimeout des Schließvorgangs Gibt einen Wert für einen Zeitraum an, der bis zum vollständigen Schließen eines Kanals zur Verfügung steht.
Standardwert: 1 MinuteKonfigurieren Sie die Authentifizierungseigenschaften :
Option Aufgabe Access Control-Dienst Wählen Sie diese Option, um ACS für die Authentifizierung zu verwenden, und geben Sie die folgenden Werte an:
– Geben Sie den Service Bus-Access Control Dienst-STS-URI ein. Der URI weist normalerweise das folgende Format auf:
https://<namespace>-sb.accesscontrol.windows.net/
– Geben Sie den Ausstellernamen für den Service Bus-Namespace ein.
– Geben Sie den Ausstellerschlüssel für den Service Bus-Namespace ein.Shared Access Signature (neu ab BizTalk Server 2013 R2) Wählen Sie diese Option, um SAS (Shared Access Signature) für die Authentifizierung zu verwenden, und geben Sie den SAS-Schlüsselnamen und -Schlüsselwert an. Geben Sie auf der Registerkarte Eigenschaften den Namespace für die benutzerdefinierten Brokernachrichteneigenschaften ein, der die Eigenschaften des BizTalk-Nachrichtenkontexts enthält, die Sie für die ausgehende Nachricht an Service Bus schreiben möchten. Alle Namespaceeigenschaften werden als benutzerdefinierte Brokernachrichteneigenschaften in die Nachricht geschrieben. Der Adapter ignoriert den Namespace, während er die Eigenschaften als Brokernachrichteneigenschaften schreibt. Er verwendet den Namespace nur, um zu ermitteln, welche Eigenschaften geschrieben werden sollen.
Sie können auch die Werte für die BrokeredMessage-Eigenschaften eingeben. Diese Eigenschaften werden unter BrokeredMessage-Eigenschaften beschrieben, einschließlich des Partitionsschlüssels.
Klicken Sie auf OK, um die Änderungen zu speichern.