AWS Integration Pattern Comparison Matrix
Maximum Throughput
Depends on API Gateway limits: - 10,000 RPS per account (default) - Can request increase
- 10,000 events/second per account - Can request increase
- Standard: Unlimited - FIFO: 3,000 msgs/sec with batching - 300 msgs/sec without batching
- 1MB/sec or 1,000 records/sec per shard - Unlimited shards
Maximum Payload Size
10MB
256KB
256KB
1MB
Best For
- Request/response patterns - CRUD operations - Synchronous operations - Direct service-to-service communication
- Event routing/fan-out - Service decoupling - Multi-account event routing - SaaS integration
- Decoupled microservices - Job queues - Workload leveling - Ordered processing (FIFO)
- Real-time analytics - Log aggregation - IoT data ingestion - Large scale streaming
Latency
- Milliseconds - Synchronous
- Near real-time - Some latency (seconds)
- Standard: variable - FIFO: ordered - Messages available immediately
- Sub-second - Ordered within shard
Delivery Guarantee
- No built-in retries - Need to implement retry logic
- At-least-once - Retry policy - DLQ support
- At-least-once - Exactly-once (FIFO) - DLQ support
- At-least-once - In-order per shard
Cost Model
- Pay per request - Pay for data transfer
- Pay per event - Pay for custom event bus
- Pay per million requests - Pay for storage
- Pay per shard - Pay for data ingestion/retrieval
Scalability
- Need to request quota increase - Can use regional endpoints
- Automatic scaling - Regional service
- Auto scaling - No shard management
- Manual shard management - Need to split/merge shards
Use When
- Need immediate response - Simple CRUD operations - API-first design
- Complex event routing - Fan-out patterns - AWS service integration
- Need message queuing - Workload decoupling - Need DLQ
- High-throughput streams - Real-time processing - Need ordering
Avoid When
- Asynchronous operations - Need retry mechanisms - Large payload sizes
- Large payloads - Need strict ordering - Ultra-low latency
- Need streaming - Need sub-second processing - Large messages
- Low throughput - Don't need ordering - Cost-sensitive
Additional Considerations:
Cross-Region Support
REST: Global via CloudFront
EventBridge: Cross-region rules
SQS: Cross-region queues
Kinesis: Cross-region replication
Development Complexity
REST: Simple to implement
EventBridge: Medium (event patterns)
SQS: Simple to implement
Kinesis: Complex (shard management)
Monitoring & Debugging
REST: API Gateway metrics/logs
EventBridge: CloudWatch metrics/logs
SQS: Queue metrics/DLQ
Kinesis: Enhanced monitoring
Last updated
Was this helpful?