Optimisez la mise en réseau et les performances des API

Last reviewed 2024-01-04 UTC

Ce document du framework d'architecture de Google Cloud fournit des recommandations pour vous aider à optimiser les performances de vos ressources réseau et de vos API dans Google Cloud.

Niveaux de service réseau

Les niveaux de service réseau vous permettent d'optimiser le coût et les performances réseau de vos charges de travail. Vous pouvez choisir parmi les niveaux suivants :

  • Le niveau Premium utilise le réseau backbone mondial extrêmement fiable de Google pour vous aider à réduire au minimum la perte de paquets et la latence. Le trafic entre et sort du réseau Google au niveau d'un point of presence (POP) périphérique global, qui est celui le plus proche de votre utilisateur final. Nous vous recommandons d'utiliser le niveau Premium comme niveau par défaut pour des performances optimales. Le niveau Premium est compatible avec les adresses IP externes régionales et globale, pour les VM et les équilibreurs de charge.
  • Le niveau Standard n'est disponible que pour les ressources utilisant des adresses IP externes régionales. Le trafic entre et sort du réseau Google au niveau du POP périphérique le plus proche de l'emplacement Google Cloud dans lequel votre charge de travail est exécutée. Le prix du niveau Standard est inférieur à celui du niveau Premium. Le niveau Standard convient au trafic non sensible à la perte de paquets et qui ne présente pas d'exigences de faible latence.

Vous pouvez afficher la latence du réseau pour les niveaux Standard et Premium pour chaque région cloud dans le Performance Dashboard Network Intelligence Center.

Trames géantes

Les réseaux de cloud privé virtuel (VPC) ont par défaut une unité de transmission maximale (MTU) de 1 460 octets. Vous pouvez cependant configurer vos réseaux VPC pour qu'ils acceptent une MTU allant jusqu'à 8896 (trames géantes).

Avec une MTU plus élevée, le réseau a besoin de moins de paquets pour envoyer la même quantité de données, ce qui réduit la bande passante utilisée par les en-têtes TCP/IP. La bande passante disponible pour le réseau est ainsi plus élevée.

Pour en savoir plus sur la MTU intra-VPC et la MTU maximale des autres connexions, consultez la page Unité de transmission maximale dans la documentation sur les VPC.

Performances des VM

Les VM Compute Engine ont une bande passante de sortie maximale qui dépend en partie du type de machine. L'un des aspects entrant en ligne de compte dans le choix d'un type de machine approprié est le trafic que la VM doit générer.

La page Bande passante réseau contient des informations détaillées et un tableau des bandes passantes réseau selon les différents types de machines Compute Engine.

Si vos besoins en bande passante inter-VM sont très élevés, envisagez d'opter pour des VM compatibles avec la mise en réseau de niveau 1.

Cloud Load Balancing

Cette section présente les bonnes pratiques pour vous aider à optimiser les performances de vos instances Cloud Load Balancing.

Déployer les applications à proximité de vos utilisateurs

Provisionnez vos backends d'application à proximité de l'emplacement où le trafic utilisateur atteint l'équilibreur de charge. Plus vos utilisateurs ou applications clientes sont proches de vos serveurs de charge de travail, plus la latence réseau entre les utilisateurs et la charge de travail est faible. Pour minimiser la latence vers les clients des différentes parties du monde, vous devrez peut-être déployer les backends dans plusieurs régions. Pour plus d'informations, consultez la section Bonnes pratiques pour la sélection des régions Compute Engine.

Choisir un type d'équilibreur de charge approprié

Le type d'équilibreur de charge que vous choisissez pour votre application peut déterminer la latence ressentie par vos utilisateurs. Pour en savoir plus sur la mesure et l'optimisation de la latence des applications pour différents types d'équilibreurs de charge, consultez la page Optimiser la latence des applications avec l'équilibrage de charge.

Activer la mise en cache

Pour accélérer la diffusion de contenu, activez la mise en cache et Cloud CDN dans la configuration de votre équilibreur de charge HTTP externe par défaut. Assurez-vous que les serveurs de backend sont configurés pour envoyer les en-têtes de réponse nécessaires à la mise en cache des réponses statiques.

Utiliser HTTP lorsque HTTPS n'est pas nécessaire

Google chiffre automatiquement le trafic entre les équilibreurs de charge proxy et les backends au niveau des paquets. Dans la plupart des cas, le chiffrement au niveau des paquets rend redondant le chiffrement HTTPS de couche 7 entre l'équilibreur de charge et les backends. Pensez à utiliser HTTP plutôt que HTTPS ou HTTP/2 pour le trafic entre l'équilibreur de charge et vos backends. En utilisant le protocole HTTP, vous pouvez également réduire l'utilisation de processeur de vos VM de backend. Toutefois, lorsque le backend est un groupe de points de terminaison du réseau (NEG) Internet, utilisez HTTPS ou HTTP/2 pour le trafic entre l'équilibreur de charge et le backend. Cela permet de garantir que votre trafic est sécurisé sur l'Internet public. Pour des performances optimales, nous vous recommandons d'effectuer une analyse comparative des modèles de trafic de votre application.

Network Intelligence Center

Le Network Intelligence Center de Google Cloud fournit une vue complète des performances du réseau Google Cloud dans toutes les régions. Network Intelligence Center vous aide à déterminer si les problèmes de latence sont dus à des problèmes au sein de votre projet ou sur le réseau. Vous pouvez également utiliser ces informations pour choisir les régions et les zones dans lesquelles déployer vos charges de travail afin d'optimiser les performances réseau.

Utilisez les outils fournis par Network Intelligence Center pour surveiller et analyser les performances réseau de vos charges de travail dans Google Cloud :

  • Performance Dashboard indique la latence entre les régions Google Cloud et entre les différents emplacements et régions sur Internet. Le module Performance Dashboard peut vous aider à déterminer où placer les charges de travail pour atteindre une latence optimale, et à identifier de probables problèmes de réseau sous-jacents en cas de problème sur une application.

  • Network Topology affiche une vue de vos réseaux VPC (Virtual Private Cloud), de la connectivité hybride avec vos réseaux sur site et de la connectivité aux services gérés par Google. Network Topology fournit des métriques opérationnelles en temps réel que vous pouvez utiliser pour analyser et comprendre les performances réseau et identifier des schémas de trafic inhabituels.

  • Network Analyzer est un outil automatique de surveillance et de diagnostic de configuration. Il vérifie les règles de pare-feu, les routes, les dépendances de configuration et la connectivité des services et applications définis dans les configurations de réseau VPC. Il vous aide à identifier les défaillances réseau et fournit une analyse des causes fondamentales ainsi que des recommandations. Network Analyzer fournit des insights prioritaires pour vous aider à analyser les problèmes de configuration réseau, tels que l'utilisation intensive d'adresses IP dans un sous-réseau.

API Gateway et Apigee

Cette section fournit des recommandations pour vous aider à optimiser les performances des API que vous déployez dans Google Cloud en utilisant API Gateway et Apigee.

API Gateway vous permet de créer et de gérer des API pour les backends sans serveur de Google Cloud, y compris Cloud Functions, Cloud Run et App Engine. Ces services sont des services gérés qui évoluent automatiquement. Toutefois, à mesure que les applications déployées sur ces services évoluent, vous devrez peut-être augmenter les quotas et les limites de débit pour API Gateway.

Apigee fournit les tableaux de bord analytiques suivants pour vous aider à surveiller les performances de vos API gérées :

Si vous utilisez Apige Integration, tenez compte des limites de configuration du système lorsque vous créez et gérez vos intégrations.

Étapes suivantes

Passez en revue les bonnes pratiques pour optimiser les performances de vos ressources de calcul, de stockage, de base de données et d'analyse :