Freigeben über


Aktivieren von Nachrichtensitzungen für eine Azure Service Bus-Warteschlange oder ein Abonnement

Azure Service Bus-Sitzungen ermöglichen die gemeinsame und geordnete Behandlung von ungebundenen Sequenzen verwandter Nachrichten. Sitzungen können in First In, First Out (FIFO)- und Request-Response-Mustern verwendet werden. Weitere Informationen finden Sie unter Nachrichtensitzungen. In diesem Artikel werden verschiedene Möglichkeiten zum Aktivieren von Sitzungen für eine ServiceBus-Warteschlange oder ein Abonnement erläutert.

Von Bedeutung

  • Der Basic-Tarif von Service Bus unterstützt keine Sitzungen. Die Standard- und Premium-Stufen unterstützen Sitzungen. Informationen zu den Unterschieden zwischen diesen Tarifen finden Sie unter Service Bus-Preise.
  • Sie können Nachrichtensitzungen nach der Erstellung der Warteschlange oder des Abonnements nicht aktivieren oder deaktivieren. Sie können dies nur zum Zeitpunkt der Erstellung der Warteschlange oder des Abonnements tun.

Verwenden des Azure-Portals

Wählen Sie beim Erstellen einer Warteschlange im Azure-Portal die Option "Sitzungen aktivieren" aus, wie in der folgenden Abbildung dargestellt.

Aktivieren der Sitzung zum Zeitpunkt der Warteschlangenerstellung

Wenn Sie ein Abonnement für ein Thema im Azure-Portal erstellen, wählen Sie "Sitzungen aktivieren" aus, wie in der folgenden Abbildung dargestellt.

Aktivieren der Sitzung zum Zeitpunkt der Abonnementerstellung

Mithilfe der Azure CLI

Um eine Warteschlange mit aktivierten Nachrichtensitzungen zu erstellen, verwenden Sie den az servicebus queue create-Befehl, bei dem --enable-session auf true festgelegt ist.

az servicebus queue create \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --name myqueue \
    --enable-session true

Um ein Abonnement für ein Thema mit aktivierten Nachrichtensitzungen zu erstellen, verwenden Sie den az servicebus topic subscription create Befehl, wobei der Parameter --enable-session auf true gesetzt wird.

az servicebus topic subscription create \
    --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --topic-name mytopic \
    --name mysubscription \
    --enable-session true

Verwenden von Azure PowerShell

Um eine Warteschlange mit aktivierten Nachrichtensitzungen zu erstellen, verwenden Sie den New-AzServiceBusQueue-Befehl, bei dem -RequiresSession auf $True festgelegt ist.

New-AzServiceBusQueue -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -QueueName myqueue `
    -RequiresSession $True

Um ein Abonnement für ein Thema mit aktivierten Nachrichtensitzungen zu erstellen, verwenden Sie den New-AzServiceBusSubscription-Befehl, bei dem -RequiresSession auf festgelegt true ist.

New-AzServiceBusSubscription -ResourceGroup myresourcegroup `
    -NamespaceName mynamespace `
    -TopicName mytopic `
    -SubscriptionName mysubscription `
    -RequiresSession $True

Verwenden einer Vorlage

Um eine Warteschlange mit aktivierten Nachrichtensitzungen zu erstellen, legen Sie requiresSession auf true im Abschnitt "Warteschlangeneigenschaften" fest. Weitere Informationen finden Sie in der Vorlagenreferenz zu Microsoft.ServiceBus-Namespaces/Warteschlangen.

@description('Name of the Service Bus namespace')
param serviceBusNamespaceName string

@description('Name of the Queue')
param serviceBusQueueName string

@description('Location for all resources.')
param location string = resourceGroup().location

resource serviceBusNamespace 'Microsoft.ServiceBus/namespaces@2024-01-01' = {
  name: serviceBusNamespaceName
  location: location
  sku: {
    name: 'Standard'
  }

  resource queue 'queues' = {
    name: serviceBusQueueName
    properties: {
      requiresSession: true
    }
  }
}

Wenn Sie ein Abonnement für ein Thema mit aktivierten Nachrichtensitzungen erstellen möchten, konfigurieren Sie requiresSession auf true im Abschnitt der Abonnementeigenschaften. Weitere Informationen finden Sie in der Vorlagenreferenz zu Microsoft.ServiceBus-Namespaces, Themen und Abonnements.

@description('Name of the Service Bus namespace')
param serviceBusNamespaceName string

@description('Name of the Topic')
param serviceBusTopicName string

@description('Name of the Subscription')
param serviceBusSubscriptionName string

@description('Location for all resources.')
param location string = resourceGroup().location

resource serviceBusNamespace 'Microsoft.ServiceBus/namespaces@2024-01-01' = {
  name: serviceBusNamespaceName
  location: location
  sku: {
    name: 'Standard'
  }

  resource topic 'topics' = {
    name: serviceBusTopicName
    properties: {
      maxSizeInMegabytes: 1024
    }

    resource subscription 'subscriptions' = {
      name: serviceBusSubscriptionName
      properties: {
        requiresSession: true
      }
    }
  }
}

Nächste Schritte

Sehen Sie sich die Beispiele in der Sprache Ihrer Wahl an, um Azure Service Bus-Features zu untersuchen.

Hier finden Sie Beispiele für die älteren .NET- und Java-Clientbibliotheken:

Am 30. September 2026 werden die Azure Service Bus SDK-Bibliotheken „WindowsAzure.ServiceBus“, „Microsoft.Azure.ServiceBus“ und „com.microsoft.azure.servicebus“ eingestellt, da sie nicht den Azure SDK-Richtlinien entsprechen. Außerdem wird die Unterstützung des SBMP-Protokolls beendet, sodass Sie dieses Protokoll nach dem 30. September 2026 nicht mehr verwenden können. Migrieren Sie vor diesem Datum zu den neuesten Azure SDK-Bibliotheken, die wichtige Sicherheitsupdates und verbesserte Funktionen bieten.

Obwohl die älteren Bibliotheken noch über den 30. September 2026 hinaus verwendet werden können, erhalten sie keinen offiziellen Support und keine Updates mehr von Microsoft. Weitere Informationen finden Sie in der Mitteilung zur Beendigung des Supports.