Montée en charge

Service Bus pour Windows Server prend en charge la montée en charge. Il existe deux aspects de la montée en charge :

  • Calcul : ajout de nouveaux ordinateurs à la batterie de serveurs existante.

  • Stockage : ajout de nouveaux conteneurs de messages.

Calcul de la montée en charge du Service Bus

L’administrateur peut monter en charge la batterie de serveurs en y ajoutant des nœuds de calculs supplémentaires. Alors que chaque ordinateur ajouté à la batterie de serveurs contient une instance de courtier de messages Service Bus pour Windows Server, notez que la montée en charge de calcul pour le courtier de messages dépend du nombre de conteneurs de messages présents dans le serveur. Par exemple, s'il n'y a qu'un conteneur de messages dans le serveur et trois ordinateurs, Service Bus pour Windows Server fournit une haute disponibilité, mais ne subit pas automatiquement de montée en charge. Nous vous recommandons de configurer au moins 2n conteneurs de messages dans la batterie de serveurs, où n correspond au nombre d’ordinateur de la batterie de serveurs.

Notez que la montée en charge de calcul du courtier de messages Service Bus pour Windows Server risque de ne pas résoudre l'ensemble des problèmes de montée en charge. Si la nouvelle base de données est située sur un autre serveur, le goulot d’étranglement peut être situé dans la couche du serveur SQL Server. Dans ce cas, vous pouvez créer davantage de conteneurs de messages, chacun d'eux contenant sa propre base de données.

Le processus de passerelle monte en charge automatiquement avec le nombre d'ordinateurs. Vous pouvez mettre à jour la configuration cliente de manière à inclure les nouveaux serveurs ajoutés. Le client Service Bus prend en charge l'API qui peut consommer une liste d'adresses de passerelle.

Montée en charge de la couche Données

Service Bus pour Windows Server prend en charge la montée en charge de la couche Données en créant des conteneurs de messages. Vous pouvez placer chaque conteneur dans une seule base de données dans un serveur SQL Server unique, ou dans Base de données SQL. De cette manière, vous pouvez indéfiniment effectuer une montée en charge de la couche Données en fonction de vos besoins.

Vous pouvez également évaluer la montée en charge de calcul en même temps que la montée en charge de la couche Données afin de garantir une capacité de calcul adéquate dans le serveur.

Conteneurs de messages Service Bus

Service Bus pour Windows Server utilise des bases de données SQL pour stocker les messages. Chaque base de données est mise en correspondance avec un composant d'exécution appelé conteneur de messages. Les conteneurs de messages pointent vers la base de données sous-jacente et vers des informations mises en cache supplémentaires afin d'accélérer Service Bus. L'hôte (serveur) Service Bus pour Windows Server peut héberger plusieurs conteneurs de messages (et donc communiquer avec plusieurs bases de données). À tout moment, un conteneur de messages est hébergé dans un hôte (serveur) Service Bus pour Windows Server unique.

Une entité de messagerie Service Bus (file d'attente ou rubrique) est créée dans un conteneur de messages (et une base de données). Tous les messages d'une entité de messagerie Service Bus sont stockés dans le même conteneur (et la même base de données). Pour que Service Bus puisse équilibrer la charge sur ses serveurs et prendre en charge une montée en charge future (en ajoutant de nouveaux serveurs), vous pouvez créer plusieurs conteneurs (même sur le même moteur de base de données). Vous pouvez créer les conteneurs de messages Service Bus en émettant la commande PowerShell suivante :

New-SBMessageContainer -ContainerDBConnectionString <String> [-SBFarmDBConnectionString <String>]

Conseil

Si vous souhaitez que votre batterie de serveurs Service Bus pour Windows Server monte et prenne en charge plusieurs applications (locataires) ou plusieurs entités de messagerie Service Bus (files d’attente et rubriques), nous vous recommandons de créer plusieurs conteneurs de messages.

Conseil

Même si vous envisagez d'avoir une seule base de données SQL Server pour stocker l'ensemble du contenu Service Bus, il est recommandé de créer plusieurs conteneurs de messages (bases de données SQL) sur le même serveur SQL.

Date de génération :

2013-07-25