An online education provider is modernizing its student enrollment application by migrating to a serverless architecture on AWS. The application will use a regional Amazon API Gateway REST API and AWS Lambda functions. The Lambda functions must process incoming enrollment requests, verify payment status by calling an external third-party payment gateway over the internet, and write records to a PostgreSQL database hosted on an Amazon RDS DB instance inside a private subnet of a VPC.
During peak registration periods, the enrollment API experiences massive, unpredictable spikes in traffic. The solutions architect must design a highly available architecture that prevents database connection exhaustion and ensures that these sudden surges in enrollment requests do not exhaust the regional concurrency pool, which would throttle other critical Lambda functions in the same AWS account.
Which of the following architectures meets these requirements?
- AConfigure the Lambda functions to run in private subnets across multiple Availability Zones. Deploy a single NAT Gateway in one Availability Zone to handle outbound internet traffic to the external payment gateway. Deploy an Amazon RDS Proxy between the Lambda functions and the PostgreSQL database. Configure reserved concurrency on the enrollment Lambda function.
- Configure the Lambda functions to run in private subnets across multiple Availability Zones. Deploy a NAT Gateway in each Availability Zone to provide redundant outbound internet access to the external payment gateway. Deploy an Amazon RDS Proxy between the Lambda functions and the PostgreSQL database. Configure reserved concurrency on the enrollment Lambda function.Cevap
- CConfigure the Lambda functions to run in private subnets across multiple Availability Zones. Deploy a NAT Gateway in each Availability Zone to provide redundant outbound internet access. Establish direct database connections from the Lambda functions to the PostgreSQL database. Configure provisioned concurrency on the enrollment Lambda function to handle the traffic spikes.
- DConfigure the Lambda functions to run in private subnets across multiple Availability Zones. Deploy a NAT Gateway in each Availability Zone to provide redundant outbound internet access. Deploy an Amazon RDS Proxy between the Lambda functions and the PostgreSQL database. Store the database credentials in a centralized security account's AWS Secrets Manager encrypted with the default AWS-managed KMS key, and configure cross-account access for the Lambda execution role.