Planificación del lugar de uso de RDS Proxy - Amazon Aurora

Planificación del lugar de uso de RDS Proxy

Puede determinar cuáles de sus instancias de base de datos, clústeres y aplicaciones podrían beneficiarse más del uso de RDS Proxy. Para ello, tenga en cuenta estos factores:

  • Cualquier clúster de base de datos que encuentre errores de "demasiadas conexiones" es un buen candidato para asociarse con un proxy. Esto suele caracterizarse por un valor alto de la métrica ConnectionAttempts de CloudWatch. El proxy permite a las aplicaciones abrir muchas conexiones de cliente, mientras que el proxy administra un número menor de conexiones de larga duración a el clúster de base de datos.

  • Para clústeres de base de datos que utilizan clases de instancias de AWS más pequeñas, como T2 o T3, el uso de un proxy puede ayudar a evitar condiciones de falta de memoria. También puede ayudar a reducir la sobrecarga de CPU para establecer conexiones. Estas condiciones pueden producirse cuando se trata de un gran número de conexiones.

  • Puede monitorear ciertas métricas de Amazon CloudWatch para determinar si un clúster de base de datos se acerca a ciertos tipos de límite. Estos límites son para el número de conexiones y la memoria asociados a la administración de conexiones. También puede monitorear ciertas métricas de CloudWatch para determinar si un clúster de base de datos está controlando muchas conexiones de corta duración. Abrir y cerrar tales conexiones puede imponer una sobrecarga de rendimiento en su base de datos. Para obtener información sobre las métricas que se van a monitorizar, consulte Supervisión de las métricas de RDS Proxy con Amazon CloudWatch.

  • AWS LambdaLas funciones de también pueden ser buenas candidatas para usar un proxy. Estas funciones hacen frecuentes conexiones cortas a la base de datos que aprovechan el grupo de conexiones que ofrece RDS Proxy. Puede aprovechar cualquier autenticación de IAM que ya tenga para funciones de Lambda, en lugar de administrar las credenciales de la base de datos en el código de la aplicación de Lambda.

  • Las aplicaciones que suelen abrir y cerrar un gran número de conexiones de base de datos y no tienen mecanismos integrados de agrupación de conexiones son buenas candidatas para usar un proxy.

  • Las aplicaciones que mantienen un gran número de conexiones abiertas durante largos períodos suelen ser buenas candidatas para usar un proxy. Las aplicaciones en sectores como el software como servicio (SaaS) o el comercio electrónico a menudo minimizan la latencia de las solicitudes de base de datos al dejar las conexiones abiertas. Con RDS Proxy, una aplicación puede mantener más conexiones abiertas que cuando se conecta directamente al clúster de base de datos.

  • Es posible que no haya adoptado la autenticación de IAM y Secrets Manager debido a la complejidad de configurar dicha autenticación para todos los clústeres de base de datos. Si es así, puede dejar los métodos de autenticación existentes en su lugar y delegar la autenticación en un proxy. El proxy puede aplicar las directivas de autenticación para conexiones de cliente para aplicaciones concretas. Puede aprovechar cualquier autenticación de IAM que ya tenga para funciones de Lambda, en lugar de administrar las credenciales de la base de datos en el código de la aplicación de Lambda.

  • RDS Proxy puede ayudar a que las aplicaciones sean más resilientes y transparentes ante los errores de base de datos. RDS Proxy evita las cachés del Sistema de nombres de dominio (DNS) a fin de reducir los tiempos de conmutación por error hasta en un 66 % para las bases de datos de Aurora Multi-AZ. RDS Proxy también dirige automáticamente el tráfico a una nueva instancia de base de datos y conserva las conexiones de la aplicación. Esto hace que la conmutación por error sea más transparente para las aplicaciones.