Boost serverless app performance with Amazon RDS Proxy & Amazon Aurora

Nadtakan Futhoem
3 min readDec 7, 2020

Amazon RDS Proxy is a highly available, fully managed, and secure proxy that is going to use between serverless applications and the Amazon RDS database.

RDS Proxy

Amazon RDS Proxy Features:

  1. Sharing your pool and database connections
  2. Increase the availability of your applications
  3. Improve your database security through the integration with different services for instance Secret Manager and enforce of DLS to connect to the database
  4. fully managed

Initial architecture

Initial architecture

Architecture with RDS Proxy

Architecture with RDS Proxy

Why you should use an RDS proxy?
1. Secure the architecture
2. Improve database performance
3. Reduce failover time
4. Improve connection management

Connection Pool

Multiplexing — reuse of connection after each transaction in your section

Borrowing — when you temporarily remove a connection from the pool and reuse it and after you reuse it. It will return the connection to the original pool.

Pinning — when RDS perceives not sure if it can reuse a connection, it maintains that connection in the session until the session ends.

High availability

High availability

It will increase your high availability application. it will speed up the failover time up 60–70%. so if you are testing fail overtime on your RDS that doesn’t integrate RDS proxy, it will take 10 seconds but if you use RDS Proxy will reduce to 7 seconds your fail over time.

Security

Security

It will enforce the use of DLS between the RDS Proxy and the database.

check out my GitHub repo for the template.

Please give me thumbs up if you like this article.

Follow me on Twitter or LinkedIn if you like.

Nadtakan Futhoem — Sr. Software Engineer

--

--