A regional transit authority is modernizing its legacy commuter fare validation system by migrating to a serverless architecture on AWS. The system must process tap-in events from subway station turnstiles via an Amazon API Gateway Private REST API. An AWS Lambda function will run in private VPC subnets to validate the commuters' cards against a central MySQL database hosted on an Amazon RDS instance. The Lambda function must also query third-party transit APIs on the internet and securely share encrypted commuter validation logs with external partner transportation databases in separate AWS accounts. The solution must ensure high availability, prevent database connection exhaustion, protect the AWS account's execution capacity during morning rush hour spikes, and secure cross-account data sharing. Which architecture should a solutions architect recommend to satisfy these requirements?
- Configure an API Gateway Private REST API using interface VPC endpoints. Deploy the Lambda function across three Availability Zones (AZs) in the private subnets, using Amazon RDS Proxy to manage connection pooling to the MySQL instance. Deploy a NAT Gateway in a public subnet within each AZ to handle outbound internet traffic. Configure a reserved concurrency limit on the Lambda function to safeguard the account's unreserved concurrency pool, and use a customer managed KMS key with a modified key policy to encrypt the shared validation logs.Cevap
- BConfigure an API Gateway Private REST API using interface VPC endpoints. Deploy the Lambda function across three Availability Zones (AZs) in the private subnets, using Amazon RDS Proxy to manage connection pooling to the MySQL instance. Deploy a single NAT Gateway in one public subnet, and configure the route tables of all private subnets to route outbound traffic through it. Configure a reserved concurrency limit on the Lambda function to safeguard the account's unreserved concurrency pool, and use a customer managed KMS key with a modified key policy to encrypt the shared validation logs.
- CConfigure an API Gateway Private REST API using interface VPC endpoints. Deploy the Lambda function across three Availability Zones (AZs) in the private subnets, using Amazon RDS Proxy to manage connection pooling to the MySQL instance. Deploy a NAT Gateway in a public subnet within each AZ to handle outbound internet traffic. Configure a reserved concurrency limit on the Lambda function to safeguard the account's unreserved concurrency pool, and use the default AWS-managed KMS key for Lambda with a modified key policy to encrypt the shared validation logs.
- DConfigure an API Gateway Private REST API using interface VPC endpoints. Deploy the Lambda function across three Availability Zones (AZs) in the private subnets, using Amazon RDS Proxy to manage connection pooling to the MySQL instance. Deploy a NAT Gateway in a public subnet within each AZ to handle outbound internet traffic. Allow the Lambda function to scale dynamically using the default regional unreserved concurrency pool to handle peak load, and use a customer managed KMS key with a modified key policy to encrypt the shared validation logs.