A retail enterprise is modernizing its legacy order processing system by migrating it to a serverless architecture on AWS. The new architecture uses an Amazon API Gateway API that triggers an AWS Lambda function. The Lambda function processes orders and updates an Amazon RDS for PostgreSQL database located in a private VPC subnet. The database also serves other business-critical reporting applications. During promotional sales, the system experiences high-volume, bursty traffic. The solutions architect must ensure that the order-processing Lambda functions do not exhaust the RDS database connection limit, and that these traffic bursts do not throttle other Lambda functions in the same AWS account. Which design should the solutions architect implement to satisfy these requirements?
- ADeploy the Lambda function in a single private subnet pointing to a single NAT Gateway. Direct the Lambda function to connect directly to the RDS database using a custom connection pooling library in the function code, and configure reserved concurrency.
- BDeploy Amazon RDS Proxy in the VPC to manage the database connection pool. Configure provisioned concurrency on the order-processing Lambda function without setting a reserved concurrency limit.
- Deploy Amazon RDS Proxy in the VPC to manage the database connection pool. Configure reserved concurrency on the order-processing Lambda function.Cevap
- DDeploy Amazon RDS Proxy in the VPC. Configure the Lambda function to access database credentials using an AWS KMS AWS-managed key shared from a central security account, and configure reserved concurrency.