Which solution will meet these requirements?
Use Amazon EC2 Image Builder to create AMIs for the legacy servers. Use the AMIs to provision EC2 instances to recreate the applications in the AWS Cloud. Place an Application Load Balancer (ALB) in front of the EC2 instances. Use Amazon Route 53 to point the DNS names of the web forms to the ALB.
Create one Amazon DynamoDB table to store data for all the data input. Use the application form name as the table key to distinguish data items. Create an Amazon Kinesis data stream to receive the data input and store the input in DynamoDB. Use Amazon Route 53 to point the DNS names of the web forms to the Kinesis data stream’s endpoint.
Create Docker images for each server of the legacy web form applications. Create an Amazon Elastic Container Service (Amazon EC2) cluster on AWS Fargate. Place an Application Load Balancer in front of the ECS cluster. Use Fargate task storage to store the web form data.
Provision an Amazon Aurora Serverless cluster. Build multiple schemas for each web form’s data storage. Use Amazon API Gateway and an AWS Lambda function to recreate the data input forms. Use Amazon Route 53 to point the DNS names of the web forms to their corresponding API Gateway endpoint.
Explanations:
Using EC2 instances would result in idle infrastructure when not in use, which does not meet the requirement to minimize idle infrastructure. This solution also lacks the scalability and cost-effectiveness needed for an event-driven workload.
DynamoDB is a NoSQL database, which may not align well with the relational database structure required for the web forms. Additionally, using Kinesis for data collection is not ideal for sporadic events, and this approach lacks a serverless solution.
Although Fargate reduces idle infrastructure by using containers, this solution lacks the built-in relational database support needed for SQL-based queries. Fargate task storage is ephemeral and not suitable for persistent data storage for web forms.
Aurora Serverless provides an on-demand relational database that can scale automatically, minimizing idle infrastructure. API Gateway and Lambda offer a fully managed, scalable way to handle event-driven requests, meeting all the requirements effectively.