sql >> Database teknologi >  >> RDS >> Mysql

Påvirker RDS-proxy den aktuelle applikationssidepooling?

Med en databaseproxy i midten er der to separate ben til en "forbindelse":

  1. For det første er der en forbindelse fra applikationen til proxyen. Det du kaldte "applikationssidepooling" er denne type forbindelse. Da der stadig er overhead forbundet med at oprette en ny forekomst af denne type forbindelse, er det sandsynligvis en god idé at fortsætte med at bruge en forbindelsespulje i din applikation.
  2. For det andet er der en forbindelse fra proxyen til databasen. Disse forbindelser administreres af proxyen. Antallet af forbindelser af denne type styres af en proxy-konfiguration. Hvis du indstiller denne konfiguration til 100 %, tillader du proxyen at bruge op til databasens max_connections værdi , og andre klienter kan blive sultet efter forbindelser.

Så når din applikation vil bruge en forbindelse, skal den få en forbindelse fra dens lokale pool. Derefter skal proxyen parre det med en forbindelse til databasen. Proxyen vil genbruge forbindelser til databasen, hvor det er muligt (denne teknik kaldes også multiplexing ).

Eller, med henvisning til de officielle dokumenter:"Du kan åbne mange samtidige forbindelser til proxyen, og proxy'en holder et mindre antal forbindelser åbne til DB-instansen eller -klyngen. Hvis du gør det, minimeres hukommelsesomkostningerne yderligere for forbindelser på databaseserveren. Dette teknik reducerer også chancen for "for mange forbindelser"-fejl."




  1. Log hver MySQL-forespørgsel til en fil ved at aktivere General Log in MAMP

  2. Top 115 SQL-interviewspørgsmål, du skal forberede i 2022

  3. Tillad null i unik kolonne

  4. Sådan sletter du rækker fra tre tabeller - forespørgselsfejl