Queue System Architecture
NZB Flow uses a sophisticated dual-queue system that allows compression/par2 creation and uploading to run simultaneously, maximizing efficiency and system resource utilization.
Architecture Overview
graph TD
A[Files Added] --> B[Compression Queue]
B --> C[RAR Creation]
C --> D[PAR2 Creation]
D --> E[Upload Queue]
E --> F[Nyuu Posting]
F --> G[Complete]
General Queue Behavior
- Pause/Resume: Controls both queues simultaneously via UI or API
- Command Completion: Running commands (rar, parpar, nyuu) finish before pausing
- Step-by-Step Control: Queues can pause between processing steps
Upload Queue
Handles posting prepared files using the Nyuu CLI.
Configuration
| Setting | Description | Impact |
|---|---|---|
| Max Upload Workers | Concurrent upload processes | More workers = higher server connection usage |
| Max Queue Size | Auto-pause threshold for compression | Prevents upload queue backlog |
Connection Calculation
Total Connections = (Server Connections + Post Check Connections) × Workers
Example: 2 workers with 10 server connections + 2 post check connections = 24 total connections
Auto-Pause Feature
When Max uploads in queue is set (≥1):
- ⏸️ Pauses compression when upload queue reaches the limit
- ▶️ Resumes compression when uploads are processed
- 🚫 Disabled when set to 0
Note: With multiple compression workers, timing may allow one extra job before pause activates
Compression Queue
Handles both RAR compression and ParPar operations with configurable worker processes.
Configuration
| Setting | Default | Description |
|---|---|---|
| Max Compression Workers | 1 | Concurrent compression processes |