Aktivieren der Partitionierung für einen Azure Service Bus Premium-Namespace

Service Bus-Partitionen ermöglichen das Partitionieren von Warteschlangen und Themen oder Nachrichtenentitäten über mehrere Nachrichtenbroker. Partitionierung bedeutet, dass der Gesamtdurchsatz einer partitionierten Entität nicht mehr durch die Leistung eines einzelnen Nachrichtenbrokers beschränkt wird. Partitionierte Warteschlangen und Themen können alle erweiterten Service Bus-Features enthalten, z. B. die Unterstützung von Transaktionen und Sitzungen. Weitere Informationen finden Sie unter Partitionierte Warteschlangen und Themen. In diesem Artikel werden verschiedene Möglichkeiten zum Aktivieren der Partitionierung für einen Service Bus Premium-Namespace beschrieben. Alle Entitäten in diesem Namespace werden partitioniert.

Hinweis

  • Partitionierung kann während der Erstellung des Namespace in der Premium-SKU aktiviert werden.
  • Es ist nicht zulässig, nicht partitionierte Entitäten in einem partitionierten Namespace zu erstellen.
  • Es ist nicht möglich, die Partitionierungsoption für einen vorhandenen Namespace zu ändern. Die Anzahl der Partitionen kann nur während der Erstellung des Namespace festgelegt werden.
  • Die zugewiesenen Messagingeinheiten sind immer ein Multiplikator der Anzahl von Partitionen in einem Namespace und werden gleichmäßig über die Partitionen verteilt. In einem Namespace mit 16 Messagingeinheiten und 4 Partitionen werden jeder Partition beispielsweise 4 Messagingeinheiten zugewiesen.
  • Beim Erstellen eines partitionierten Namespaces in einer Region , die Verfügbarkeitszonen unterstützt, wird dies automatisch für den Namespace aktiviert.
  • Mehrere Partitionen mit niedrigeren Messagingeinheiten (MU) bieten bessere Leistung als eine einzelne Partition mit höheren MUs.
  • Stellen Sie bei Verwendung des Service Bus georedundante Notfallwiederherstellungsfeature sicher, dass sie keinen partitionierten Namespace mit einem nicht partitionierten Namespace koppeln.
  • Es ist nicht möglich, einen Standard-SKU-Namespace in einen partitionierten Premium-SKU-Namespace zu migrieren.
  • JMS wird derzeit für partitionierte Namespaces nicht unterstützt.
  • Das Feature ist derzeit in allen Regionen verfügbar, mit Ausnahme von Indien, Westen.

Verwenden des Azure-Portals

Legen Sie beim Erstellen eines Namespace im Azure-Portal die Partitionierung auf Aktiviert fest, und wählen Sie die Anzahl von Partitionen aus, wie in der folgenden Abbildung dargestellt: Screenshot: Bildschirm, auf dem die Partitionierung zum Zeitpunkt der Namespaceerstellung aktiviert wird

Mithilfe der Azure-Befehlszeilenschnittstelle

Um einen Namespace mit aktivierter Partitionierung zu erstellen, verwenden Sie den az servicebus namespace create Befehl, mit --premium-messaging-partitions der auf eine Zahl festgelegt ist, die größer als 1 ist.

az servicebus namespace create \
    --resource-group myresourcegroup \
    --name mynamespace \
    --location westus 
    --sku Premium
    --premium-messaging-partitions 4

Mithilfe von Azure PowerShell

Um einen Namespace mit aktivierter Partitionierung zu erstellen, verwenden Sie den New-AzServiceBusNamespace Befehl, mit -PremiumMessagingPartition der auf eine Zahl festgelegt ist, die größer als 1 ist.

New-AzServiceBusNamespace -ResourceGroupName myresourcegroup `
    -Name mynamespace `
    -Location westus `
    -PremiumMessagingPartition 4

Verwenden von Azure Resource Manager-Vorlagen

Um einen Namespace mit aktivierter Partitionierung zu erstellen, legen Sie im Abschnitt mit den Namespaceeigenschaften partitions auf eine Zahl fest, die größer als 1 ist. Im Beispiel unten wird ein partitioniertes Namespace mit vier Partitionen erstellt, und jeder Partition wird eine Messagingeinheit zugewiesen. Weitere Informationen finden Sie in der Vorlagenreferenz für Microsoft.ServiceBus-Namespaces.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "serviceBusNamespaceName": {
      "type": "string",
      "metadata": {
        "description": "Name of the Service Bus namespace"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.ServiceBus/namespaces",
      "apiVersion": "2022-10-01-preview",
      "name": "[parameters('serviceBusNamespaceName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Premium",
        "capacity": 4
      },
      "properties": {
        "premiumMessagingPartitions": 4
      }
    }
  ]
}

Nächste Schritte

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