Soru

Zorluk: Çok zorDecoupling Architectures and Event-Driven Messaging

A company is designing a high-throughput financial transaction processing application on AWS. The application must process incoming transactions in the exact order they are received. Transactions are ingested via Amazon API Gateway and must be decoupled before being processed by a fleet of microservices running on Amazon Elastic Container Service (Amazon ECS). Additionally, an independent compliance microservice must receive a copy of every transaction for near real-time auditing and archiving, although the compliance service itself does not require strict ordering. Which combination of steps should a solutions architect take to meet these requirements with the least operational overhead? (Select TWO.)

  1. Publish incoming transactions from Amazon API Gateway to an Amazon SNS FIFO topic.Cevap
  2. Create two Amazon SQS FIFO queues: one for the transaction processing backend and one for the compliance microservice. Subscribe both queues to the SNS FIFO topic.Cevap
  3. C
    Create an Amazon SQS FIFO queue for the transaction processing backend, and a standard Amazon SQS queue for the compliance microservice. Subscribe both queues to the SNS FIFO topic.
  4. D
    Publish incoming transactions to a standard Amazon SNS topic, and subscribe two Amazon SQS FIFO queues to it to ensure ordering is maintained at the queue level.
  5. E
    Configure the compliance microservice to subscribe directly to the Amazon SNS FIFO topic using an HTTPS endpoint.

Cevap

Publish incoming transactions from Amazon API Gateway to an Amazon SNS FIFO topic, and create two Amazon SQS FIFO queues (one for the transaction processing backend and one for the compliance microservice) subscribed to the SNS FIFO topic.
To process transactions in strict order with a decoupled, fan-out architecture, the ingestion must use an Amazon SNS FIFO topic. Because Amazon SNS FIFO topics strictly limit subscriber endpoints to Amazon SQS FIFO queues, the compliance microservice must also use an SQS FIFO queue despite not requiring strict ordering itself. This design ensures end-to-end message ordering, deduplication, and successful fan-out delivery.

Adım Adım Çözüm

1
Analyze the ordering requirements for the transaction processing backend.
Transactions must be processed in the exact order they are received, requiring end-to-end FIFO (First-In-First-Out) ordering.
This establishes that both the ingestion/fan-out layer (SNS) and the queueing layer (SQS) for the transaction backend must support FIFO semantics.
2
Determine the decoupling and fan-out mechanism.
An Amazon SNS FIFO topic is required to publish and fan out the messages while preserving strict ordering.
Standard SNS topics do not guarantee message ordering, which would break the transactional ordering requirement before messages reach the queues.
3
Evaluate the subscription constraints for Amazon SNS FIFO topics.
SNS FIFO topics only support Amazon SQS FIFO queues as subscriber endpoints.
Because of this native AWS restriction, any microservice subscribing to the SNS FIFO topic—including the compliance service—must use an SQS FIFO queue, regardless of whether that specific service needs ordering.

Anahtar Kavram

End-to-end FIFO ordering in event-driven systems using Amazon SNS FIFO and Amazon SQS FIFO integration rules.
Tahmini Süre:3m 0s
Bu soruyu puanla