Niveau Premium de messagerie Azure Service Bus

Azure Service Bus est un répartiteur de messages d’entreprise entièrement géré. Le niveau Premium de Service Bus fournit une isolation des ressources dédiée au niveau du processeur et de la mémoire, afin que chaque charge de travail de messagerie s’exécute indépendamment des autres locataires. Pour plus d’informations sur Service Bus, consultez Qu’est-ce que Azure Service Bus ?.

Lorsque vos applications nécessitent un débit prévisible, une latence cohérente ou une prise en charge de messages volumineux pouvant atteindre 100 Mo, le niveau Premium offre les garanties de performances dont vous avez besoin pour les scénarios de production et stratégiques.

Cet article explique les différences techniques entre les niveaux Premium et Standard, le fonctionnement des unités de messagerie et de l’utilisation des ressources et la prise en main d’un espace de noms Premium. Le tableau suivant met en évidence certaines différences clés.

Critères Haute qualité Norme
Débit Débit élevé Débit variable
Performances Performances prévisibles Latence variable
Tarification Prix fixe Tarification à l’utilisation variable
Échelle Possibilité de faire évoluer la charge de travail S/O
Taille des messages Taille de message maximale de 100 Mo. Pour plus d’informations, consultez Prise en charge des messages de grande taille. Taille de message maximale de 256 Ko

La messagerie Service Bus Premium isole les ressources au niveau processeur et mémoire, ce qui permet d’exécuter chaque charge de travail client de manière isolée. Ce conteneur de ressources est appelé unité de messagerie. Au moins une unité de messagerie est allouée à chaque espace de noms premium. Vous pouvez acheter 1, 2, 4, 8 ou 16 unités de messagerie pour chaque espace de noms Service Bus Premium. Une entité ou une charge de travail unique peut couvrir plusieurs unités de messagerie et le nombre d’unités de messagerie peut être modifié à volonté. Au final, les performances de votre solution Service Bus sont prévisibles et répétables.

La messagerie Premium offre également des performances maximales plus rapides par rapport au niveau standard.

Choisir un palier

Service Bus propose trois niveaux qui diffèrent par les capacités qu’ils offrent :

Pour une comparaison complète des fonctionnalités et des prix pour tous les niveaux tarifaires, consultez la tarification de Service Bus. Pour déplacer un espace de noms existant, voir Migrer Standard vers Premium - un espace de noms Basic migre vers Premium via Standard.

Différences techniques de la messagerie Premium

Les sections suivantes présentent quelques différences entre les niveaux de messagerie Premium et Standard.

Entités Express

Comme la messagerie Premium fonctionne dans un environnement d’exécution isolé, les entités express ne sont pas prises en charge dans les espaces de noms Premium. Une entité Express conserve temporairement un message en mémoire avant de l’écrire dans un stockage persistant. Si du code est exécuté dans le cadre de la messagerie Standard et que vous souhaitez le porter au niveau Premium, veillez à ce que la fonction d’entité Express soit désactivée.

Utilisation des ressources de la messagerie Premium

En règle générale, toute opération sur une entité peut entraîner l’utilisation du processeur et de la mémoire. Voici quelques-unes de ces opérations :

  • Opérations de gestion telles que les opérations de création, d’extraction, de mise à jour et de suppression (CRUD) sur les files d’attente, les sujets et les abonnements.
  • Opérations d’exécution (envoi et réception de messages).
  • Surveillance des opérations et des alertes.

L’utilisation supplémentaire du processeur et de la mémoire n’est pas facturée en outre. Le prix par unité de message est unique pour le niveau de messagerie Premium.

L’utilisation du processeur et de la mémoire est suivie et affichée pour les raisons suivantes :

  • Assurer la transparence des éléments internes du système.
  • Comprendre la capacité des ressources achetées.
  • Planification des capacités qui vous aide à décider s’il faut augmenter ou réduire la capacité.

Combien d’unités de messagerie sont nécessaires ?

Vous spécifiez le nombre d’unités de messagerie lors de l’approvisionnement d’un espace de noms Premium Azure Service Bus. Ces unités de messagerie sont des ressources dédiées qui sont allouées à l’espace de noms. Lorsque le partitionnement est activé dans l’espace de noms, les unités de messagerie sont réparties de manière égale entre les partitions.

Le nombre d’unités de messagerie allouées à l’espace de noms Service Bus Premium peut être ajusté dynamiquement pour tenir compte des changements (augmentation ou diminution) des charges de travail.

Prenez en compte les facteurs suivants lors de la décision du nombre d’unités de messagerie pour votre architecture :

  • Commencez par 1 ou 2 unités de messagerie allouées à votre espace de noms, ou 1 unité de message par partition.
  • Vérifiez les métriques d’utilisation du processeur et de la mémoire dans les métriques d’utilisation des ressources pour votre espace de noms.
    • Si l’utilisation du CPU est inférieure à 25%, vous pourriez être capable de réduire le nombre d’unités de messagerie allouées à votre espace de noms.
    • Si l’utilisation du processeur dépasse 75%, votre application bénéficie d’une augmentation du nombre d’unités de messagerie allouées à votre espace de noms.
    • Comme la consommation de mémoire peut augmenter rapidement, augmentez la taille lorsque la mémoire dépasse 60% pour éviter les interruptions du traitement des messages.

Pour configurer un espace de noms Service Bus afin qu'il se mette automatiquement à l'échelle (augmentation ou diminution des unités de messagerie), consultez Mettre automatiquement à jour les unités de messagerie.

Remarque

La mise à l’échelle des ressources allouées à l’espace de noms peut être préemptive ou réactive.

  • Préventif : si une charge de travail supplémentaire est attendue (en raison de la saisonnalité ou de certaines tendances), vous pouvez allouer davantage d’unités de messagerie à l’espace de noms avant que ces charges de travail ne surviennent.

  • Réactive : si des charges de travail supplémentaires sont identifiées en examinant les métriques d’utilisation des ressources, des ressources supplémentaires peuvent être allouées à l’espace de noms pour incorporer la hausse de la demande.

Les compteurs de facturation pour Service Bus sont calculés sur une base horaire, en fonction du nombre maximal d’unités de messagerie allouées au cours de chaque heure. Quand vous montez en valeur, vous payez pour les unités supplémentaires à chaque heure qui leur est allouée, même si vous ne les utilisez que pour une partie de cette heure. Réduire la capacité au cours de la même heure ne réduit pas la facturation de cette heure. Pour plus d’informations, voir Considérations de coût pour la mise à l’échelle.

Découvrez la messagerie premium

La prise en main de la messagerie Premium est simple et le processus est similaire à celui de la messagerie Standard. Commencez par créer un espace de noms dans le portail Azure. Veillez à sélectionner Premium sous Niveau de tarification. Cliquez sur Afficher tous les détails de la tarification pour voir plus d’informations sur chaque niveau.

Capture d’écran montrant la sélection du niveau Premium lors de la création d’un espace de noms.

Vous pouvez également créer des espaces de noms Premium à l’aide de modèles Azure Resource Manager.

Prise en charge des messages volumineux

Les espaces de noms Azure Service Bus de niveau premium prennent en charge la possibilité d’envoyer des charges utiles de messages volumineux jusqu’à 100 Mo. Cette fonctionnalité est principalement destinée aux charges de travail héritées qui utilisaient des charges utiles de messages plus volumineuses sur d’autres courtiers de messagerie d’entreprise et souhaitent migrer vers Azure Service Bus.

Voici quelques considérations à prendre en compte lors de l’envoi de messages volumineux sur Azure Service Bus :

  • Pris en charge uniquement dans les espaces de noms Azure Service Bus de niveau Premium.
  • Pris en charge uniquement lors de l’utilisation du protocole AMQP (Advanced Message Queuing Protocol). Non pris en charge lors de l’utilisation des protocoles SBMP ou HTTP. Dans le niveau Premium, la taille maximale des messages pour les protocoles SBMP et HTTP est de 1 Mo.
  • Prise en charge lors de l’utilisation du SDK client Java Message Service (JMS) 2.0 et de SDK clients d’autres langages.
  • L’envoi de messages volumineux entraîne une réduction du débit et une augmentation de la latence.
  • Bien que les charges utiles de message de 100 Mo soient prises en charge, conservez les charges utiles de message aussi petites que possible pour garantir des performances fiables à partir de l’espace de noms Service Bus.
  • La taille maximale de message est appliquée uniquement pour les messages envoyés à la file d’attente ou à la rubrique. La limite de taille n’est pas appliquée pour l’opération de réception. Cela vous permet de mettre à jour la taille maximale des messages pour une file d’attente (ou rubrique) donnée.
  • Le traitement par lot n’est pas pris en charge.

Important

Le 30 septembre 2026, nous mettrons hors service la prise en charge du protocole SBMP pour Azure Service Bus. Vous ne pourrez donc plus utiliser ce protocole après le 30 septembre 2026. Migrez vers les dernières bibliothèques Azure Service Bus SDK à l’aide du protocole AMQP (Advanced Message Queuing Protocol), qui offre des mises à jour de sécurité critiques et des fonctionnalités améliorées, avant cette date.

Pour plus d’informations, consultez l’annonce concernant l’arrêt de la prise en charge.

Activer la prise en charge des messages volumineux pour une nouvelle file d’attente ou une nouvelle rubrique

Pour activer la prise en charge des messages volumineux, définissez la taille maximale des messages lors de la création d’une file d’attente ou d’une rubrique, comme illustré dans l’image suivante :

Capture d’écran montrant comment activer la prise en charge des messages volumineux lors de la création d’une file d’attente.

Activer la prise en charge des messages volumineux pour une file d’attente ou une rubrique existante

Vous pouvez également activer la prise en charge des messages volumineux pour les files d’attente ou rubriques existantes en mettant à jour la taille maximale des messages dans la vue d’ensemble de cette file d’attente ou rubrique spécifique, comme illustré dans l’image suivante.

Capture d’écran de la page Vue d’ensemble d’une file d’attente existante montrant le paramètre Taille maximale des messages.

Sécurité réseau dans Service Bus Premium

Les fonctionnalités de sécurité réseau suivantes sont disponibles uniquement dans le niveau Premium. Pour plus d’informations, consultez Sécurité réseau.

La configuration du pare-feu IP à l’aide du Portail Microsoft Azure est disponible uniquement pour les espaces de noms de niveau Premium. Toutefois, vous pouvez configurer des règles de pare-feu IP pour les autres niveaux à l’aide de modèles Azure Resource Manager, CLI, PowerShell ou l’API REST. Pour plus d’informations, consultez Configurer le pare-feu IP.

Chiffrement des données au repos dans Service Bus

Toutes les données Service Bus sont chiffrées au repos à l’aide de clés gérées par Microsoft dans les niveaux Standard et Premium. Le niveau Premium prend également en charge les clés gérées par le client (CMK), qui ajoutent une deuxième couche de chiffrement au-dessus de la clé gérée par le Microsoft. Avec CMK, vous pouvez créer, faire pivoter, désactiver et révoquer l’accès aux clés utilisées pour chiffrer vos données. L’activation des clés gérées par le client est un processus de configuration unique sur votre espace de noms. Pour plus d’informations, consultez Chiffrement des données au repos d’Azure Service Bus.

Partitionnement dans le Service Bus

Il existe des différences entre les niveaux Standard et Premium en matière de partitionnement.

  • Le partitionnement est disponible au moment de la création de l’entité pour toutes les files d’attente et rubriques dans les références SKU De base et Standard. Un espace de noms peut avoir des entités partitionnées et non partitionnées. Pour le niveau Premium, le partitionnement est disponible lors de la création de l’espace de noms, et toutes les files d’attente et les rubriques de cet espace de noms sont partitionnées. Toutes les entités partitionnées précédemment migrées dans les espaces de noms Premium continuent de fonctionner comme prévu.
  • Lorsque le partitionnement est activé dans les références SKU De base ou Standard, Service Bus crée 16 partitions. Lorsque le partitionnement est activé dans le niveau Premium, la quantité de partitions est spécifiée lors de la création de l’espace de noms.

Pour plus d’informations, consultez Partitionnement dans Service Bus.

Haute disponibilité dans Service Bus

Azure Service Bus répartit le risque de défaillances catastrophiques d’ordinateurs individuels ou même de racks complets sur différents clusters couvrant plusieurs domaines d’échec au sein d’un centre de données. Le service implémente des mécanismes transparents de détection des défaillances et de basculement. Il continue ainsi de fonctionner selon les niveaux de service garantis et, en général, sans interruptions perceptibles lorsque de telles défaillances se produisent. Un espace de noms Premium peut avoir au moins deux unités de messagerie, et ces unités de messagerie sont réparties entre plusieurs domaines de défaillance dans un centre de données, ce qui prend en charge un modèle de cluster Service Bus entièrement actif.

Pour un espace de noms Service Bus, le risque de panne est réparti sur trois installations physiquement séparées zones d’indisponibilité et le service dispose de suffisamment de réserves de capacité pour gérer instantanément la perte complète et catastrophique d’un centre de données. Le modèle de cluster Azure Service Bus tout actif au sein d’un domaine de défaillance avec prise en charge des zones de disponibilité est supérieur à tous les produits de type répartiteurs de messages locaux en termes de résilience face à des défaillances matérielles graves, voire à une perte catastrophique de sites de centres de données entiers. Il peut néanmoins se produire des situations graves impliquant une destruction physique généralisée contre laquelle même ces mesures ne suffisent pas.

En outre, la fonctionnalité Geo-Replication est l’une des options permettant de insulater des applications Azure Service Bus contre les pannes et les sinistres, en fournissant la réplication des métadonnées (entités, configuration, propriétés) et données (données de message et propriété de message/ changements d’état). La fonctionnalité de géoréplication garantit que les métadonnées et les données d’un espace de noms sont répliquées en continu d’une région primaire vers une ou plusieurs régions secondaires.

  • Files d’attente, rubriques, abonnements, filtres.
  • Données résidant dans les entités.
  • Toutes les modifications d’état et les modifications de propriétés exécutées sur les messages dans un espace de noms.
  • Configuration de l’espace de noms.

Cette fonctionnalité permet de promouvoir n’importe quelle région secondaire en région primaire, à tout moment. La promotion d’une région secondaire redirige le nom de l’espace de noms vers la région secondaire sélectionnée et inverse les rôles entre la région primaire et la région secondaire. La promotion est presque instantanée une fois lancée.

Pour plus d’informations, consultez Récupération d’urgence géographique d’Azure Service Bus.

prise en charge de Java Message Service (JMS) dans Service Bus

Le niveau Premium prend en charge JMS 1.1 et JMS 2.0. Pour plus d’informations, consultez Comment utiliser JMS 2.0 avec Azure Service Bus Premium.

Le niveau Standard prend uniquement en charge le sous-ensemble JMS 1.1 axé sur les files d’attente. Pour plus d’informations, consultez Utiliser Java Message Service 1.1 avec Azure Service Bus Standard.