¿Cómo distribuyen Aurora MySQL o PostgreSQL la carga de trabajo entre los nodos lectores?

3 minutos de lectura
0

Quiero saber cómo Amazon Aurora para MySQL o PostgreSQL distribuye la carga de trabajo entre los nodos lectores.

Resolución

Utilice el punto de enlace del lector para conectarse a los nodos del lector de un clúster de Amazon Aurora. 

Para verificar la distribución de rotación de las conexiones, ejecute un comando de shell. Para ver cómo Aurora intenta equilibrar la carga de las conexiones con el punto de enlace del lector, ejecute un comando similar al del siguiente ejemplo:

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

Cada vez que resuelve el punto de enlace del lector, obtiene una dirección IP de instancia a la que puede conectarse. Esta dirección IP se elige en función de la distribución de rotación.

Es posible que la conexión de base de datos a cada réplica de lectura no esté distribuida de manera uniforme en los siguientes casos:

  • Un cliente almacena en caché la información de DNS. La distribución desigual se produce cuando el cliente usa la configuración de conexión en caché para conectarse a la misma réplica de Aurora. El almacenamiento en caché de DNS puede efectuarse en cualquier lugar, como la capa de red, el sistema operativo o el contenedor de la aplicación.
  • Si la instancia de base de datos se conmuta por error, es posible que el punto de enlace del lector redirija las conexiones. El punto de enlace del lector puede dirigir temporalmente las conexiones a la instancia de base de datos principal del clúster de base de datos. Esta redirección se produce cuando una réplica de Aurora se pasa a ser la instancia de base de datos principal.
  • La réplica de lectura no está disponible o no pasa una comprobación de estado.
  • La aplicación está escrita en Java y no se desactiva ni ajusta el almacenamiento en caché de TTL. Si no desactiva ni ajusta el almacenamiento en caché de TTL, las máquinas virtuales Java (JVM) pueden almacenar DNS en caché de forma indefinida. Para obtener más información, consulte Setting the JVM TTL for DNS name lookups.
  • Cuando las conexiones se producen al mismo tiempo, estas se envían al mismo punto de enlace del lector.

Al administrar la distribución de la carga de trabajo, utilice puntos de enlace personalizados para obtener más flexibilidad. Por ejemplo, puede usar puntos de enlace personalizados si utiliza diferentes tamaños de instancia de base de datos en el clúster. 

Información relacionada

Administración de conexiones de Amazon Aurora

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 meses