QA
Senior LevelCloud Computing (AWS/GCP/Azure)

How do you architect an Event-Driven Distributed Saga using EventBridge, Step Functions, and DynamoDB?

❓ Interview Prompt: Explain the Distributed Saga Pattern (Orchestration vs Choreography), compensating transactions, eventual consistency, and Step Functions execution.

In microservice architectures, executing transactions spanning multiple independent databases (e.g. Order Service, Payment Service, Inventory Service) cannot use ACID 2-phase commit transactions. The Saga Pattern manages distributed transactions.

Orchestrated Saga Architecture:

1
Step Functions Orchestrator: Executes a state machine coordinating microservice execution steps.
2
Forward Transactions: Step 1: Reserve Inventory $\rightarrow$ Step 2: Charge Credit Card $\rightarrow$ Step 3: Dispatch Order.
3
Compensating Transactions (Rollback): If Step 2 (Payment) fails, the state machine sequentially executes Compensating Actions in reverse order (e.g. Invoking 'CancelInventoryReservation' Lambda) to undo previous changes and restore eventual consistency!

Code Implementation Example

json
{
  "StartAt": "ReserveInventory",
  "States": {
    "ReserveInventory": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:ReserveInventory",
      "Catch": [{ "ErrorEquals": ["States.ALL"], "Next": "CancelInventoryCompensating" }],
      "Next": "ProcessPayment"
    },
    "ProcessPayment": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:ProcessPayment",
      "Catch": [{ "ErrorEquals": ["States.ALL"], "Next": "CancelInventoryCompensating" }],
      "End": true
    },
    "CancelInventoryCompensating": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:CancelInventory",
      "End": true
    }
  }
}
💡Orchestrated Saga Pattern in Step Functions executing compensating rollback transactions.
🎯 Interview Key Takeaway

The Saga Pattern uses Step Functions state machines to orchestrate multi-microservice transactions and execute compensating rollback actions on failure.

#Saga Pattern#Distributed Systems#Step Functions#EDA#Senior
Back to all Cloud Computing (AWS/GCP/Azure) Questions→

More Cloud Computing (AWS/GCP/Azure) Interview Questions

Beginner LevelCloud Computing (AWS/GCP/Azure)

How does Serverless Architecture (AWS Lambda / GCP Cloud Run) handle Auto-Scaling and Cold Starts?

Beginner LevelCloud Computing (AWS/GCP/Azure)

What is the difference between IaaS, PaaS, and SaaS cloud service models?

Beginner LevelCloud Computing (AWS/GCP/Azure)

What is AWS EC2 and what are On-Demand, Reserved, and Spot Instance pricing models?