Partager via


Passerelle dédiée Azure Cosmos DB - Vue d’ensemble

S’APPLIQUE À : NoSQL

Une passerelle dédiée est un calcul côté serveur qui est un serveur frontal pour votre compte Azure Cosmos DB. Lorsque vous vous connectez à la passerelle dédiée, elle achemine les requêtes et met en cache les données. À l’instar du débit approvisionné, la passerelle dédiée est facturée à l’heure.

Vue d'ensemble

Vous pouvez approvisionner une passerelle dédiée pour améliorer les performances à grande échelle. La mise en cache est la raison la plus courante pour laquelle vous souhaitez configurer une passerelle dédiée. Lorsque vous approvisionnez une passerelle dédiée, un cache intégré est automatiquement configuré dans celle-ci. Les lectures de point et les requêtes qui ont une correspondance dans le cache intégré n’utilisent aucune de vos unités de requête. L’approvisionnement d’une passerelle dédiée avec un cache intégré peut aider à réduire les coûts pour les charges de travail intensives sur Azure Cosmos DB.

La passerelle dédiée est intégrée à Azure Cosmos DB. Quand vous provisionnez une passerelle dédiée, vous disposez d’un nœud complètement managé qui achemine les requêtes vers les partitions principales. La connexion à Azure Cosmos DB avec la passerelle dédiée offre une latence plus faible et plus prévisible que la connexion à Azure Cosmos DB avec la passerelle standard. Même les échecs du cache présentent une amélioration de la latence lors de la comparaison de la passerelle dédiée et de la passerelle standard.

Votre application utilise une passerelle dédiée moyennant des modifications de code minimales. Les comptes Azure Cosmos DB nouveaux et existants peuvent approvisionner une passerelle dédiée pour améliorer les performances de lecture.

Notes

Avez-vous des commentaires sur la passerelle dédiée ? Nous attendons vos remarques ! N’hésitez pas à partager vos commentaires directement avec l’équipe d’ingénierie Azure Cosmos DB :cosmoscachefeedback@microsoft.com

Modes de connexion

Il existe deux modes de connectivité pour Azure Cosmos DB : le mode direct et le mode passerelle. Avec le mode passerelle, vous pouvez vous connecter à la passerelle standard ou à la passerelle dédiée en fonction du point de terminaison que vous configurez.

Diagramme illustrant le fonctionnement des modes de connectivité Azure Cosmos DB.

Se connecter à Azure Cosmos DB dans le mode direct

Quand vous vous connectez à Azure Cosmos DB à l’aide du mode direct, votre application se connecte directement au serveur principal Azure Cosmos DB. Même si vous avez de nombreuses partitions physiques, le routage des requêtes est géré entièrement côté client. Le mode direct offre une faible latence, car votre application peut communiquer directement avec le backend Azure Cosmos DB et n’a pas besoin d’un tronçon réseau intermédiaire. Si vous choisissez de vous connecter en mode direct, vos requêtes n’utiliseront pas la passerelle dédiée ou le cache intégré.

Se connecter à Azure Cosmos DB à l’aide du mode passerelle

Si vous vous connectez à Azure Cosmos DB à l’aide du mode passerelle, votre application se connecte en premier lieu à un nœud front-end, qui gère le routage de la requête vers les nœuds back-end appropriés. Étant donné que le mode passerelle implique un tronçon réseau supplémentaire, vous pouvez observer une latence légèrement supérieure par rapport au mode direct.

Quand vous vous connectez à Azure Cosmos DB avec le mode passerelle, vous pouvez le faire avec l’une des options suivantes :

  • Passerelle standard : si le serveur principal, qui inclut votre débit et votre stockage provisionnés, a une capacité dédiée par conteneur, la passerelle standard est partagée entre plusieurs comptes Azure Cosmos DB. Il est pratique pour de nombreux clients de partager une passerelle standard, car les ressources de calcul consommées par chaque client sont faibles.
  • Passerelle dédiée : le backend et la passerelle disposent tous deux d’une capacité dédiée. Le cache intégré nécessite une passerelle dédiée car il requiert un processeur et une mémoire importants, spécifiques à votre compte Azure Cosmos DB.

Vous devez vous connecter à Azure Cosmos DB à l’aide de la passerelle dédiée afin d’utiliser le cache intégré. La passerelle dédiée a un point de terminaison différent de celui fourni avec votre compte Azure Cosmos DB, mais les demandes sont routées de la même manière. Lorsque vous vous connectez à votre point de terminaison de passerelle dédié, votre application envoie une requête à la passerelle dédiée, qui achemine ensuite la requête vers différents nœuds du principal. Si possible, le cache intégré traite le résultat.

Diagramme de connexion en mode passerelle avec une passerelle dédiée :

Diagramme illustrant le fonctionnement de la passerelle Azure Cosmos DB dédiée.

Approvisionnement de la passerelle dédiée

Un cluster de passerelle dédié peut être approvisionné dans des comptes d’API pour NoSQL. Un cluster de passerelle dédié peut avoir jusqu’à cinq nœuds par défaut, et vous pouvez ajouter ou supprimer des nœuds à tout moment. Tous les nœuds de passerelle dédiés de votre compte partagent le même point de terminaison de passerelle dédié.

Les nœuds de passerelle dédiés sont indépendants les uns des autres. Lorsque vous approvisionnez plusieurs nœuds de passerelle dédiés, n’importe quel nœud unique peut acheminer une requête donnée. De plus, chaque nœud possède un cache intégré distinct des autres. Les données mises en cache dans chaque nœud dépendent des données qui ont été écrites ou lues récemment par ce nœud spécifique. Si un élément ou une requête est mis en cache sur un nœud, il ne l’est pas nécessairement sur les autres.

Pour le développement, nous vous recommandons de commencer avec un nœud, mais pour la production, vous devez configurer trois nœuds ou plus afin de bénéficier de la haute disponibilité. Découvrez comment approvisionner un cluster de passerelle dédié avec un cache intégré. L’approvisionnement de plusieurs nœuds de passerelle dédiés permet au cluster de passerelle dédié de continuer à acheminer les requêtes et à traiter les données mises en cache, même si l’un des nœuds de passerelle dédiés n’est pas disponible.

La passerelle dédiée est disponible dans les tailles suivantes. Le cache intégré utilise environ 50 % de la mémoire et le reste est réservé aux métadonnées et au routage des demandes vers les partitions back-end.

Nom de la référence SKU Processeurs virtuels Mémoire
D4s 4 16 Go
D8s 8 32 Go
D16s 16 64 Go

Conseil

Une fois la création effectuée, vous pouvez ajouter ou supprimer des nœuds de passerelle dédiée, mais vous ne pouvez pas modifier la taille des nœuds. Pour changer la taille de vos nœuds de passerelle dédiée, vous pouvez déprovisionner le cluster et le reprovisionner dans une autre taille. Cela entraîne un court temps d’arrêt, sauf si vous changez le point de terminaison dans votre application de façon à utiliser la passerelle standard lors du réapprovisionnement.

Il existe plusieurs façons de provisionner une passerelle dédiée :

Remarque

Vous ne pouvez pas approvisionner une passerelle dédiée dans les comptes Azure Cosmos DB avec les zones de disponibilitépar requête. Contactez cosmoscachefeedback@microsoft.com pour plus d’informations.

Passerelle dédiée dans les comptes à plusieurs régions

Lorsque vous approvisionnez un cluster de passerelle dédié dans des comptes à plusieurs régions, des clusters de passerelle dédiés identiques sont approvisionnés dans chaque région. Par exemple, considérez un compte Azure Cosmos DB dans les régions USA Est et Europe Nord. Si vous configurez un cluster de passerelle dédié avec deux nœuds D8 dans ce compte, vous auriez quatre nœuds D8 au total - deux dans la région USA Est et deux dans la région Europe Nord. Vous n’avez pas besoin de configurer explicitement des passerelles dédiées dans chaque région, et votre point de terminaison de passerelle dédié reste le même. Il n’y a pas non plus de modifications apportées aux meilleures pratiques pour effectuer des basculements.

Comme les nœuds d’un cluster, les nœuds de passerelle dédiés dans les régions sont indépendants. Il est possible que les données mises en cache dans chaque région soient différentes, en fonction des lectures ou écritures récentes dans cette région.

Limites

Les passerelles dédiées sont uniquement prises en charge par les comptes d’API pour NoSQL.

Étapes suivantes

Pour plus d’informations sur l’utilisation des passerelles dédiées, consultez les articles suivants :