A smart-grid utility provider is modernizing its legacy telemetry collection backend by migrating to a serverless architecture on AWS. The system must process highly bursty, intermittent telemetry payloads from millions of smart meters via an API and write the processed records to an Amazon Aurora PostgreSQL database in a private subnet. The design must satisfy the following requirements:
1. Outbound internet traffic to third-party validation endpoints must be highly available and resilient to single Availability Zone failures.
2. The database must be protected from connection exhaustion during sudden traffic spikes.
3. Other critical microservices running in the same AWS account must be shielded from resource starvation caused by telemetry spikes.
4. Telemetry data must be encrypted with custom security policies and audit controls using AWS KMS.
5. Deployments of the backend code must shift traffic gradually to the new version over minutes and automatically roll back if errors occur.
Which of the following architectures meets these requirements while adhering to AWS best practices?
- Configure Amazon API Gateway with a regional endpoint integration to AWS Lambda. Deploy the Lambda functions in a private VPC spanning multiple Availability Zones, using Amazon RDS Proxy to manage database connection pooling. Deploy a NAT Gateway in each Availability Zone's public subnet to provide redundant outbound routes. Apply reserved concurrency to the ingestion Lambda function. Encrypt the data using an AWS KMS Customer Managed Key. Utilize AWS CodeDeploy with a canary deployment configuration, monitored by Amazon CloudWatch alarms, to shift traffic to new Lambda versions.Cevap
- BConfigure Amazon API Gateway with a regional endpoint integration to AWS Lambda. Deploy the Lambda functions in a private VPC spanning multiple Availability Zones, using Amazon RDS Proxy to manage database connection pooling. Deploy a NAT Gateway in each Availability Zone's public subnet to provide redundant outbound routes. Apply provisioned concurrency to the ingestion Lambda function to handle peak burst environments, keeping reserved concurrency unconfigured. Encrypt the data using an AWS KMS Customer Managed Key. Utilize AWS CodeDeploy with a canary deployment configuration, monitored by Amazon CloudWatch alarms, to shift traffic to new Lambda versions.
- CConfigure Amazon API Gateway with a regional endpoint integration to AWS Lambda. Deploy the Lambda functions in a private VPC spanning multiple Availability Zones, using Amazon RDS Proxy to manage database connection pooling. Deploy a single NAT Gateway in one Availability Zone's public subnet to route all outbound validation traffic. Apply reserved concurrency to the ingestion Lambda function. Encrypt the data using an AWS KMS Customer Managed Key. Utilize AWS CodeDeploy with a canary deployment configuration, monitored by Amazon CloudWatch alarms, to shift traffic to new Lambda versions.
- DConfigure Amazon API Gateway with a regional endpoint integration to AWS Lambda. Deploy the Lambda functions in a private VPC spanning multiple Availability Zones, using Amazon RDS Proxy to manage database connection pooling. Deploy a NAT Gateway in each Availability Zone's public subnet to provide redundant outbound routes. Apply reserved concurrency to the ingestion Lambda function. Encrypt the data using the default AWS-managed KMS key for Lambda. Utilize AWS CodeDeploy with a canary deployment configuration, monitored by Amazon CloudWatch alarms, to shift traffic to new Lambda versions.