Comment Aurora MySQL ou PostgreSQL répartissent-ils la charge de travail entre les nœuds de lecture ?

Lecture de 3 minute(s)
0

Je souhaite savoir comment Amazon Aurora pour MySQL ou PostgreSQL répartit la charge de travail entre les nœuds de lecture.

Résolution

Utilisez le point de terminaison du lecteur pour vous connecter aux nœuds de lecture d’un cluster Amazon Aurora.

Exécutez ensuite une commande shell pour vérifier la distribution de la rotation des connexions. Pour voir comment Aurora tente d’équilibrer la charge de vos connexions au point de terminaison du lecteur, exécutez une commande de ce type :

while sleep 5; do dig xxx-cluster.cluster-ro-xxxxxx.us-east1.rds.amazonaws.com|grep CNAME; done

Pour chaque résolution du point de terminaison du lecteur, vous obtenez une adresse IP d’instance à laquelle vous pouvez vous connecter. Cette adresse IP est choisie en fonction de la distribution de la rotation.

Dans les cas suivants, la connexion à la base de données de chaque réplica en lecture peut ne pas être répartie uniformément :

  • Les informations DNS ont été mises en cache par un client. Une distribution inégale se produit lorsque le client se connecte au même réplica Aurora à l’aide des paramètres de connexion mis en cache. La mise en cache DNS peut se faire n’importe où, au niveau de votre couche réseau, du système d’exploitation ou du conteneur d’application.
  • En cas d’échec de l’instance de la base de données, le point de terminaison du lecteur peut être amené à rediriger les connexions. Le point de terminaison du lecteur peut temporairement diriger les connexions vers l’instance de la base de données principale pour le cluster de bases de données. Cette redirection se produit lorsqu’un réplica Aurora est promu au rang d’instance de base de données principale.
  • Le réplica en lecture n’est pas disponible ou rencontre un échec lors de la surveillance de l’état.
  • L’application est développée en Java et la mise en cache de la durée de vie (TTL) n’est pas désactivée ou ajustée. Lorsque la mise en cache de la durée de vie (TTL) n’est pas désactivée ou ajustée, les machines virtuelles Java (JVM) peuvent indéfiniment mettre en cache le DNS. Pour en savoir plus, consultez la page Configuration de la durée de vie de la JVM pour les recherches de noms DNS.
  • Les connexions établies simultanément sont envoyées au même point de terminaison du lecteur.

Utilisez des points de terminaison personnalisés pour rendre la gestion de la distribution de votre charge de travail plus flexible. Par exemple, vous pouvez utiliser des points de terminaison personnalisés si vous utilisez différentes tailles d’instance de base de données au sein du cluster. 

Informations connexes

Gestion des connexions Amazon Aurora

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 3 mois