Azure Service Bus – Fonctionnalités avancées

Certaines fonctionnalités avancées de Service Bus sont utiles pour résoudre des problèmes de messagerie plus complexes. Cet article décrit plusieurs d’entre elles.

Sessions de message

Pour créer une garantie FIFO (pour « First In First Out », ou « Premier entré, premier sorti ») dans Service Bus, utilisez des sessions. Les sessions de message permettent un traitement exclusif et chronologique de séquences illimitées de messages associés. Pour permettre la gestion des sessions dans les systèmes à grande échelle et à haute disponibilité, la fonctionnalité de session permet également de stocker l’état de session, ce qui permet aux sessions de se déplacer de façon sécurisée entre les gestionnaires. Si vous souhaitez en savoir plus, veuillez consulter l’article Sessions de messagerie : premier entré, premier sorti (FIFO).

Transfert automatique

La fonctionnalité de transfert automatique crée une chaîne reliant une file d’attente ou un abonnement à une autre file d’attente ou rubrique à l’intérieur du même espace de noms. Lorsque vous utilisez cette fonctionnalité, Service Bus déplace automatiquement les messages d’une file d’attente ou d’un abonnement dans une file d’attente ou rubrique cible. Tous ces déplacements sont effectués de manière transactionnelle. Si vous souhaitez en savoir plus, veuillez consulter l’article Chaînage des entités Service Bus avec transfert automatique.

File d’attente de lettres mortes

Tous les abonnements des files d’attente et des rubriques Service Bus disposent de files d’attente de lettres mortes associées. Une file d’attente de lettres mortes contient les messages qui répondent aux critères suivants :

  • Ils ne peuvent pas être remis correctement à un destinataire.
  • Leur délai d’attente a expiré.
  • Ils sont explicitement écartés par l’application destinataire.

Les messages, dans la file d’attente de lettres mortes, sont annotés selon la raison pour laquelle ils y ont été placés. La file d’attente de lettres mortes possède un point de terminaison particulier, mais agit sinon comme n’importe quelle file d’attente normale. Une application ou un outil peut parcourir une file d’attente de lettres mortes, ou enlever des message de celle-ci. Vous pouvez également procéder à un transfert automatique à partir d’une file d’attente de lettres mortes. Pour en savoir plus, consultez Vue d’ensemble des files d’attente de lettres mortes Service Bus.

Remise planifiée

Vous pouvez envoyer des messages vers une file d’attente ou vers une rubrique pour un traitement différé, en définissant l’heure à laquelle le message est rendu disponible pour qu’il soit utilisé. Les messages planifiés peuvent également être annulés. Si vous souhaitez en savoir plus, veuillez consulter la rubrique Messages planifiés.

Report de message

Un client de file d’attente ou d’abonnement peut reporter la récupération d’un message reçu à une date ultérieure définie. Le message a peut-être été publié selon un ordre attendu, et le client veut attendre de recevoir un autre message. Les messages différés restent dans la file d’attente ou l’abonnement ; ils doivent être réactivés explicitement au moyen de leur numéro de séquence assigné par le service. Si vous souhaitez en savoir plus, veuillez consulter l’article Report de message.

Transactions

Une transaction regroupe plusieurs opérations dans une étendue d’exécution. Service Bus vous permet de grouper les opérations par rapport à plusieurs entités de messagerie dans l’étendue d’une seule transaction. Une entité de message peut être une file d’attente, une rubrique ou un abonnement. Si vous souhaitez en savoir plus, veuillez consulter l’article Vue d’ensemble du traitement des transactions Service Bus.

Suppression automatique en cas d’inactivité

La fonctionnalité de suppression automatique en cas d’inactivité vous permet de spécifier un intervalle d’inactivité à l’issue duquel une file d’attente ou un abonnement à une rubrique est automatiquement supprimé. Lorsqu’un message est ajouté ou supprimé de l’abonnement, l’intervalle est réinitialisé. La durée minimale est de 5 minutes. Pour obtenir une vue d’ensemble de ce qui est considéré comme de l’oisiveté pour les entités, veuillez case activée l’inactivité.

Détection des doublons

La fonctionnalité de détection des doublons permet à l’expéditeur de renvoyer le même message une nouvelle fois, et au répartiteur d’éliminer un doublon potentiel. Pour en savoir plus, consultez Détection des doublons.

Ordre des messages de support

La fonctionnalité Classement de prise en charge vous permet de spécifier si des messages envoyés vers une rubrique doivent être transférés à l’abonnement dans le même ordre que celui dans lequel ils ont été envoyés. Cette fonctionnalité ne prend pas en charge les rubriques partitionnées. Pour plus d’informations, consultez TopicProperties.SupportOrdering en .NET ou TopicProperties.setOrderingSupported en Java.

Géorécupération d’urgence

Lorsqu’une région Azure subit un temps d’arrêt, la fonctionnalité de récupération d’urgence permet de poursuivre le traitement des messages dans une autre région ou un autre centre de données. La fonctionnalité conserve le miroir structurel d’un espace de noms disponible dans la région secondaire, et permet à l’identité de l’espace de noms de basculer vers l’espace de noms secondaire. Les messages déjà publiés sont conservés dans l’ancien espace de noms principal, en vue de la reprise d’activité une fois l’incident de disponibilité éloigné. Pour plus d’informations, consultez Géorécupération d’urgence Azure Service Bus.

Sécurité

Service Bus prend en charge les protocoles standard AMQP 1.0 et HTTP ou REST ainsi que leurs installations de sécurité respectives, y compris la sécurité au niveau du transport (TLS). Les clients peuvent être autorisés à accéder par l’intermédiaire de la sécurité basée sur les rôles Signature d’accès partagé ou Microsoft Entra ID.

Pour la protection contre le trafic indésirable, Service Bus fournit des fonctionnalités de sécurité, telles que le pare-feu IP et l’intégration aux réseaux virtuels.

Étapes suivantes

Pour savoir comment utiliser ces fonctionnalités de Service Bus, consultez Exemples de messages Service Bus.