Which solution meets these requirements?
Use Amazon API Gateway and AWS Lambda with an Amazon DynamoDB table as the data store. Configure the DynamoDB table for provisioned capacity.
Use Amazon API Gateway and AWS Lambda with an Amazon DynamoDB table as the data store. Configure the DynamoDB table for on-demand capacity.
Run Amazon EC2 instances behind an Application Load Balancer in an Auto Scaling group with an Amazon DynamoDB table as the data store. Configure the DynamoDB table for on-demand capacity.
Run Amazon EC2 instances behind a Network Load Balancer in an Auto Scaling group with an Amazon DynamoDB table as the data store. Configure the DynamoDB table for provisioned capacity.
Explanations:
While API Gateway and Lambda offer scalability and no server maintenance, using DynamoDB with provisioned capacity does not handle sharp traffic spikes effectively, as it could lead to throttling during peak loads.
API Gateway and Lambda are highly scalable, and DynamoDB on-demand capacity automatically scales with traffic spikes, meeting the requirements for no server maintenance, high scalability, and handling unpredictable traffic patterns.
Although EC2 Auto Scaling with a Load Balancer provides scalability, it involves managing servers and capacity planning. Additionally, DynamoDB on-demand capacity is well-suited, but EC2 does not meet the “no server maintenance” requirement.
Network Load Balancers are better suited for TCP traffic, while WebSockets require Layer 7 routing. This setup requires server management and does not fully address capacity planning, violating the “no server maintenance” requirement.