Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

632
Views
Manejo de la agrupación de conexiones de AWS RDS (con POSTGRES 13) y Node Lambdas

Estamos utilizando una instancia de RDS en AWS, es POSTGRES 13. Tenemos Lambdas basadas en nodos que devuelven y publican datos en la base de datos. Actualmente están abriendo y cerrando una sola conexión por transacción y queremos optimizar esto implementando la agrupación de conexiones.

Hay un servicio de AWS diseñado específicamente para manejar conexiones de base de datos llamado AWS RDS Proxy PERO no es compatible con POSTGRES 13. Estamos buscando enfoques alternativos y realmente agradeceríamos cualquier información al respecto.

Estábamos pensando en extraer la conexión de la base de datos fuera del controlador Lambda para que mantenga el estado (hasta que se elimine Lambda), PERO esto no podría cerrar su conexión a la base de datos y nos preocupaba llenar todas las conexiones disponibles. . Este puede o no ser el caso.

Muchas gracias,

Sam

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Aquí hay algunos pensamientos aleatorios que podrían ayudar.

  • ¿Hay alguna razón especial por la que necesite usar PostgreSQL 13? Si pudiera volver al 10/11, entonces podría usar RDS Proxy y luego sus problemas se resolverían.
  • Del mismo modo, si desea utilizar RDS Aurora, podrá combinarlo con RDS Proxy.
  • Puede usar PgBouncer (u otro proxy de terceros; hay muchos), pero hacer que esto funcione con RDS será bastante doloroso. La mayoría de ellos requerirán que active una instancia de ECS, ejecute el proxy en esto y luego se conecte al proxy; esto es deliberadamente vago, ya que cada proxy funciona de manera ligeramente diferente
  • Podría aumentar la cantidad de conexiones de base de datos permitidas, pero esto generalmente es una mala idea, ya que solo está pateando la lata en el camino.
  • Puede buscar soluciones de escalado horizontal o vertical, pero nuevamente, estas no resolverán el problema subyacente, solo lo harán no tan evidente y tomarán más golpes simultáneos antes de que vuelva a surgir.
  • Podría colocar una cola frente a su base de datos, SNS o SQS, y solo tener una conexión. Esto está bien si solo está escribiendo datos en la base de datos y no está demasiado preocupado por el tiempo que tarda en completarse. Sin embargo, presenta una arquitectura completamente diferente, y que anula muchos de los puntos buenos de usar RDS en primer lugar.
  • Si necesita leer datos, puede usar réplicas de lectura, pero esta es solo otra forma de escalado/fragmentación horizontal.
  • Del mismo modo, podría deshacerse del uso de Lambdas, ya que estos son el "enjambre de abejas enojadas" que causan el problema en primer lugar, pero nuevamente, es un gran cambio arquitectónico.

En mi experiencia, obtener una solución de agrupación de conexiones debería ser lo suficientemente bueno para resolver la mayoría de los casos de uso, pero aún existen límites cuando se combinan dos tecnologías que no son 100 % compatibles.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!