A company uses a payment processing system that requires messages for a particular payment ID to be received in the same order they were sent. Otherwise, payments might be processed incorrectly. Which actions should a solutions architect take to meet this requirement? (Choose two.)
Choose an answer
Tap an option to check your answer.
Correct answer: Write the messages to an Amazon Kinesis data stream with the payment ID as the partition key., Write the messages to an Amazon Simple Queue Service (Amazon SQS) FIFO queue. Set the message group to use the payment ID..
Why this is the answer
To ensure messages for a particular payment ID are processed in order, both Amazon Kinesis Data Streams and Amazon SQS FIFO queues are suitable. Kinesis Data Streams use a partition key (here, the payment ID) to route all messages for that key to a specific shard, preserving order within that shard. SQS FIFO queues guarantee message ordering and exactly-once processing. By setting the message group ID to the payment ID, all messages with the same group ID are processed in the order they are sent. DynamoDB is a NoSQL database and while it can store messages, it doesn't inherently enforce processing order for a stream of messages. ElastiCache for Memcached is an in-memory key-value store primarily for caching, not for ordered message processing. A standard SQS queue (non-FIFO) does not guarantee message order.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed