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

Copyright © 2024 NZB Flow. Distributed under MIT License.

This site uses Just the Docs, a documentation theme for Jekyll.