Which solution meets these requirements?
Use Amazon ECS containers for the web application and Spot instances for the Auto Scaling group that processes the SQS queue. Replace the custom software with Amazon Rekognition to categorize the videos.
Store the uploaded videos in Amazon EFS and mount the file system to the EC2 instances for the web application. Process the SQS queue with an AWS Lambda function that calls the Amazon Rekognition API to categorize the videos.
Host the web application in Amazon S3. Store the uploaded videos in Amazon S3. Use S3 event notification to publish events to the SQS queue. Process the SQS queue with an AWS Lambda function that calls the Amazon Rekognition API to categorize the videos.
Use AWS Elastic Beanstalk to launch EC2 instances in an Auto Scaling group for the web application and launch a worker environment to process the SQS queue. Replace the custom software with Amazon Rekognition to categorize the videos.
Explanations:
While using Amazon ECS and Spot instances may reduce costs, it does not fully utilize AWS managed services and still relies on custom software for video categorization.
Storing videos in Amazon EFS introduces additional management overhead and does not fully leverage serverless options, despite using AWS Lambda for processing.
Hosting both the web application and videos in Amazon S3 simplifies management, scales automatically, and using Lambda for processing the SQS queue fully utilizes AWS managed services, reducing operational overhead.
AWS Elastic Beanstalk introduces additional complexity and operational overhead compared to serverless options, and still depends on EC2 instances for the web application, which is contrary to the requirement to reduce operational overhead.