Worker Manager API
WorkerManager Class
Import
from core.worker_manager import WorkerManagerConstructor
WorkerManager(router, group_name=None, router_directory="app.routers")from core.router import Router
from core.worker_manager import WorkerManager
# Create router with shared routes
router = Router()
router.on("telemetry/{sensor_id}", TelemetryController.handle_data,
shared=True, worker_count=5)
# Create worker manager
worker_manager = WorkerManager(
router=router,
group_name="telemetry_workers",
router_directory="app.routers"
)Core Methods
start_workers(num_workers=None)
stop_workers()
get_worker_count()
get_shared_routes_info()
Configuration
MQTT Broker Configuration
Example Configuration
WorkerProcess Class
Key Features
Worker Lifecycle
Usage Patterns
Basic Usage
Advanced Configuration
Dynamic Scaling
Health Monitoring
Best Practices
1. Proper Shutdown Handling
2. Worker Count Optimization
3. Resource Management
4. Error Recovery
5. Logging and Monitoring
Troubleshooting
Common Issues
Workers Not Starting
Workers Dying
Memory Leaks
Last updated