Available Providers
Azure Storage Queue
Reliable, cost-effective queuing using Azure Storage
Amazon SQS
Fully managed message queuing service from AWS
File System
Local file-based messaging for development and on-premises
IndexedDB
Client-side messaging for Blazor WebAssembly applications
Provider Comparison
| Feature | Azure Storage | Amazon SQS | File System | IndexedDB |
|---|---|---|---|---|
| Cost | Very Low | Low | Free | Free |
| Scalability | High | Very High | Limited | Limited |
| Reliability | High | Very High | Medium | Medium |
| Latency | Low | Very Low | Very Low | Very Low |
| Setup Complexity | Low | Medium | Very Low | Low |
| Platform Support | All | All | All | Browser Only |
Choosing a Provider
Azure Storage Queue
Best for:- Applications already using Azure ecosystem
- Cost-sensitive scenarios (very affordable)
- High-volume, low-complexity messaging
- Integration with Azure Functions
- 64KB message size limit
- Basic message ordering (FIFO not guaranteed)
- No advanced routing features
- Background job processing
- Event notifications
- Simple workflow coordination
Amazon SQS
Best for:- Applications in AWS ecosystem
- Mission-critical applications requiring high reliability
- Complex messaging patterns with DLQ support
- Applications requiring message ordering (FIFO queues)
- Higher cost than Azure Storage
- More complex IAM configuration
- AWS-specific features and terminology
- Microservices communication
- Order processing systems
- High-volume transaction processing
File System
Best for:- Development and testing
- On-premises deployments
- Simple applications with low message volume
- Azure Functions with custom triggers
- Not suitable for production at scale
- No built-in redundancy
- Platform-dependent file locking
- Local development
- Simple background processing
- File-based integrations
- Proof of concepts
IndexedDB
Best for:- Blazor WebAssembly applications
- Client-side background processing
- Offline-capable applications
- Browser-based workflows
- Browser storage quotas
- Single-user scenarios only
- No cross-browser synchronization
- Limited to WebAssembly context
- Client-side data processing
- Offline message queuing
- Browser-based workflows
- Progressive Web Apps (PWAs)
Multi-Provider Architecture
You can use multiple providers in the same application for different scenarios:Migration Between Providers
SimpleMessageBus makes it easy to migrate between providers:- Add the new provider alongside the existing one
- Gradually migrate message types to the new provider
- Update handlers to process from both providers during transition
- Remove the old provider once migration is complete
Provider-Specific Features
Each provider offers unique features that you can leverage:Azure Storage Queue Features
- Poison message handling: Automatic dead letter queue support
- Message TTL: Configurable time-to-live for messages
- Peek operations: Non-destructive message inspection
- Batch operations: Process multiple messages efficiently
Amazon SQS Features
- FIFO queues: Guaranteed message ordering
- Message deduplication: Automatic duplicate detection
- Dead letter queues: Sophisticated error handling
- Long polling: Efficient message retrieval
File System Features
- Azure Functions triggers: Custom trigger bindings
- File watching: Real-time processing of new files
- Structured storage: Organized file hierarchies
- Cross-platform compatibility: Works on all operating systems
IndexedDB Features
- Offline support: Works without network connectivity
- Large storage: Gigabytes of client-side storage
- Transaction support: ACID properties for data integrity
- Asynchronous operations: Non-blocking browser operations