Worker Processes
Shared Subscriptions Overview
┌─────────────────┐ ┌─────────────────┐
│ MQTT Broker │ │ Shared Group │
│ │ │ "workers" │
│ Topic: │ │ │
│ sensors/+/data │───▶│ ┌──────────┐ │
│ │ │ │ Worker 1 │ │
│ Messages: │ │ └──────────┘ │
│ [Msg1, Msg2, │ │ ┌──────────┐ │
│ Msg3, Msg4, │ │ │ Worker 2 │ │
│ Msg5, Msg6] │ │ └──────────┘ │
│ │ │ ┌──────────┐ │
│ │ │ │ Worker 3 │ │
│ │ │ └──────────┘ │
└─────────────────┘ └─────────────────┘
│ │
│ Load Balancing:
│ Worker 1: Msg1, Msg4
│ Worker 2: Msg2, Msg5
│ Worker 3: Msg3, Msg6
▼
Round-robin or
broker-specific
distributionEnabling Shared Subscriptions
Route Configuration
Group Configuration
Worker Manager
Starting Workers
Worker Process Management
Worker Process Architecture
Process Isolation
Independent Router Loading
MQTT Client per Worker
Shared Subscription Topics
Topic Format
Subscription Management
Topic Extraction
Load Balancing Strategies
Broker-Based Distribution
Route-Specific Worker Counts
Scaling Patterns
Auto-Scaling Based on Load
Geographic Distribution
Performance Characteristics
Throughput Benefits
Latency Considerations
Memory Usage
Configuration and Deployment
Environment Configuration
Docker Deployment
Kubernetes Scaling
Monitoring and Observability
Worker Health Monitoring
Metrics Collection
Best Practices
When to Use Shared Subscriptions
Worker Count Guidelines
Resource Management
Error Handling
Troubleshooting
Common Issues
Debug Mode
Next Steps
Last updated