Tengo una aplicación Saas en AWS ECS y bases de datos en AWS RDS. Estamos planeando implementar AWS RDS Proxy para la implementación de la agrupación. De la documentación del proxy RDS, vi que no necesitamos hacer ningún cambio en el código de la aplicación. Actualmente, estamos utilizando la agrupación de conexiones del lado de la aplicación. Cuando implementamos un proxy RDS para la agrupación, ¿la agrupación actual tiene algún impacto?
¿Necesitamos eliminar la agrupación del lado de la aplicación para trabajar con RDS de manera efectiva?
Mi principal preocupación es si elijo 100% de agrupación en el proxy RDS y desde la configuración de agrupación de aplicaciones si lo limitamos a decir 100 conexiones máximas. ¿Será eso un cuello de botella?
Con un proxy de base de datos en el medio, hay dos tramos separados para una "conexión":
max_connections de la base de datos , y otros clientes pueden quedarse sin conexiones.Entonces, cuando su aplicación quiere usar una conexión, necesita obtener una conexión de su grupo local. Luego, el proxy necesita emparejarlo con una conexión a la base de datos. El proxy reutilizará las conexiones a la base de datos cuando sea posible (esta técnica también se denomina multiplexación ).
O, citando los documentos oficiales: "Puede abrir muchas conexiones simultáneas al proxy, y el proxy mantiene una cantidad menor de conexiones abiertas a la instancia de la base de datos o al clúster. Al hacerlo, se minimiza aún más la sobrecarga de memoria para las conexiones en el servidor de la base de datos. Esto La técnica también reduce la posibilidad de errores de "demasiadas conexiones".