What should a solutions architect do to improve the architecture of this application?
Set the Lambda function’s runtime timeout value to 15 minutes.
Configure an S3 bucket replication policy. Stage the documents in the S3 bucket for later processing.
Deploy an additional Lambda function. Load balance the processing of the documents across the two Lambda functions.
Create an Amazon Simple Queue Service (Amazon SQS) queue. Send the requests to the queue. Configure the queue as an event source for Lambda.
Explanations:
Increasing the Lambda function’s runtime timeout only addresses the processing time per document but does not solve issues related to high document volume or Lambda concurrency limits.
S3 replication is used for duplicating data across buckets, not for controlling or improving document processing throughput. It does not solve the issue of Lambda processing capacity.
Deploying additional Lambda functions could help with scaling, but AWS Lambda automatically scales based on demand, and manual load balancing is unnecessary and not optimal.
Using an SQS queue to buffer requests allows for better control over the processing load. Lambda can be triggered by SQS and can handle a burst of documents efficiently, mitigating issues with processing spikes.