Question

Difficulty: EasyDecoupling Architectures and Event-Driven Messaging

A company has a web application that processes user registration requests. The requests must be processed asynchronously in the exact order they are received to ensure proper database indexing. The workload is highly unpredictable with sudden, massive traffic spikes. A solutions architect needs to decouple the frontend application from the backend processing servers. Which solution meets these requirements with the least operational overhead?

  1. A
    Configure the web application to send the requests to an Amazon SQS Standard queue, and configure backend servers to process the messages.
  2. B
    Configure the web application to write the requests to an Amazon DynamoDB table configured with Provisioned Capacity Mode to handle the unpredictable traffic.
  3. Configure the web application to send the requests to an Amazon SQS FIFO queue, and configure backend servers to process the messages.Answer
  4. D
    Configure the web application to invoke an AWS Lambda function to run the processing script that executes continuously for 20 minutes.

Answer

Configure the web application to send the requests to an Amazon SQS FIFO queue, and configure backend servers to process the messages.
The correct option is the one that configures the application to use Amazon SQS FIFO queues. FIFO queues guarantee that messages are processed in the exact order they are sent, satisfying the indexing requirement. Because SQS scales automatically to absorb spikes, it buffers the load for the backend servers, meeting the decoupling and resilience goals with the least operational overhead.

Step-by-Step Solution

1
Analyze the requirement for message ordering.
The messages must be processed in the exact order they are received to ensure proper database indexing.
This requirement rules out standard queue systems that do not guarantee ordering.
2
Evaluate Amazon SQS queue types.
Amazon SQS FIFO queues guarantee first-in, first-out delivery and single execution.
FIFO queues meet the ordering requirement while decoupling the application components.
3
Verify handling of unpredictable traffic spikes.
Amazon SQS automatically scales to handle spikes in traffic without manual provisioning.
This provides a highly resilient architecture with minimal operational overhead.

Key Concept

Decoupling with ordered message processing using SQS FIFO queues
Rate this question