Skip to content

RDS Multi-AZ and RDS Proxy

Multi-AZ and RDS Proxy are separate features that solve separate problems. Neither requires the other. They are frequently confused because both are described as improving availability, and because RDS Proxy shortens failover times — which makes it sound like part of the failover machinery when it is not.

A high-availability configuration of the database itself.

  • Maintains a synchronous standby replica in a second Availability Zone.
  • Fails over automatically when the primary instance fails or is taken down for maintenance.
  • Configured on the DB instance; there is nothing else to deploy.
  • Works entirely on its own.

Multi-AZ is about the database surviving the loss of an instance or an Availability Zone.

A fully managed connection proxy that sits between applications and the database.

  • Pools and reuses database connections, so a large fleet of short-lived clients does not open a connection each.
  • Holds client connections open across a failover and repoints them, which cuts the time an application spends unable to reach the database.
  • Manages credentials through Secrets Manager and IAM rather than embedding them in the application.
  • Deployed as its own resource, with its own endpoint that the application connects to.
  • Works with single-AZ and Multi-AZ deployments alike, and with Aurora.

RDS Proxy is about connection management. Lambda functions and containerised workloads that scale horizontally are its usual motivation: without pooling they exhaust the database’s connection limit, and the memory each connection costs is memory the database is not using for queries.

The combination is common and worth it in most production deployments, because the two effects compound:

  • Multi-AZ provides the standby and the automatic failover.
  • RDS Proxy shortens the client-visible outage during that failover, because clients keep their connections to the proxy while the proxy re-establishes its own to the promoted instance.
  • Connection pooling reduces the load the database carries in normal operation.

But the choice is genuinely independent. Multi-AZ without the proxy gives high availability with a longer reconnect. The proxy without Multi-AZ gives connection management with no failover target. Decide each on its own merits.