Activer le partitionnement pour un espace de noms Azure Service Bus Premium

Les partitions Service Bus permettent le partitionnement de files d’attente et rubriques, ou d’entités de messagerie entre plusieurs courtiers de messages. Le partitionnement signifie que le débit global d’une entité partitionnée n’est plus limité par les performances d’un seul courtier de messages. Les rubriques et les files d’attente partitionnées peuvent contenir toutes les fonctionnalités avancées de Service Bus, comme la prise en charge des transactions et des sessions. Pour plus d’informations, consultez Rubriques et files d’attente partitionnées. Cet article vous montre différentes façons d’activer le partitionnement pour un espace de noms Service Bus Premium. Toutes les entités de cet espace de noms seront partitionnées.

Remarque

  • Le partitionnement peut être activé lors de la création de l’espace de noms dans la référence SKU Premium.
  • Nous n’autorisons pas la création d’entités non partitionnées dans un espace de noms partitionné.
  • Il n’est pas possible de modifier l’option de partitionnement sur un espace de noms existant. Le nombre de partitions ne peut être défini que lors de la création de l’espace de noms.
  • Les unités de messagerie affectées sont toujours un multiple de la quantité de partitions dans un espace de noms et sont également réparties de façon uniforme entre les partitions. Par exemple, dans un espace de noms avec 16 unités de messageries et 4 partitions, chaque partition est affectée à 4 unités de messagerie.
  • Lors de la création d’un espace de noms partitionné dans une région qui prend en charge les zones de disponibilité, cette option est automatiquement activée sur l’espace de noms.
  • Plusieurs partitions avec des unités de messagerie inférieures vous offrent de meilleures performances par rapport à une seule partition avec des unités de messagerie plus élevées.
  • Lors de l’utilisation de la fonctionnalité de géo-reprise d’activité après sinistre de Service Bus, veillez à ne pas associer un espace de noms partitionné à un espace de noms non partitionné.
  • Il n’est pas possible de migrer un espace de noms de référence SKU standard vers un espace de noms partitionné de référence SKU Premium.
  • JMS n’est actuellement pas pris en charge sur les espaces de noms partitionnés.
  • La fonctionnalité est actuellement disponible dans toutes les régions, à l’exception d’Inde Ouest.

Utiliser le portail Azure

Lors de la création d’un espace de noms dans le Portail Azure, définissez le partitionnement sur Activé et choisissez le nombre de partitions, comme illustré dans l’image suivante. Capture d’écran de l’écran où le partitionnement est activé au moment de la création de l’espace de noms.

Utiliser l’interface de ligne de commande Microsoft Azure

Pour créer un espace de noms avec le partitionnement activé, utilisez la commande az servicebus namespace create en définissant --premium-messaging-partitions sur un nombre supérieur à 1.

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

Utilisation d'Azure PowerShell

Pour créer un espace de noms avec le partitionnement activé, utilisez la commande New-AzServiceBusNamespace en définissant -PremiumMessagingPartition sur un nombre supérieur à 1.

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

Utilisation d’un modèle Azure Resource Manager

Pour créer un espace de noms avec le partitionnement activé, définissez partitions sur un nombre supérieur à 1 dans la section Propriétés de l’espace de noms. Dans l’exemple ci-dessous, un espace de noms partitionné est créé avec 4 partitions et 1 unité de messagerie affectée à chaque partition. Pour plus d’informations, consultez la documentation de référence sur les modèles d’espaces de noms Microsoft.ServiceBus.

{
  "$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
      }
    }
  ]
}

Étapes suivantes

Essayez les exemples dans le langage de votre choix pour explorer les fonctionnalités d’Azure Service Bus.