nntp-proxy 0.5.1

NNTP proxy server with per-command backend multiplexing, caching, metrics, and TUI dashboard
Documentation
# NNTP Proxy — Typical Configuration
#
# A good starting point for most setups:
# - Single worker thread
# - Two backend servers (primary + fallback)
# - No article cache
# - No client authentication
#
# Copy to config.toml and fill in your backend details.
# For all available options see config.full.toml.

[proxy]
# Port to listen on (default: 8119)
port = 8119
# Worker threads (default: 1; use 0 for one per CPU core)
threads = 1

[routing]
# Routing mode: "hybrid" (default), "per-command", or "stateful"
mode = "hybrid"
# Backend selection strategy: "least-loaded" (default) or "weighted-round-robin"
backend_selection = "least-loaded"

[health_check]
interval = 30
timeout = 5
unhealthy_threshold = 3

# Primary backend — tried first
[[servers]]
host = "news.example.com"
port = 119
name = "Primary"
username = "your_username"
password = "your_password"
max_connections = 20
tier = 0
use_tls = false
tls_verify_cert = true

# Fallback backend — used after the primary tier is exhausted for the request
# (for example, after eligible primary backends report article-missing 430s)
[[servers]]
host = "news2.example.com"
port = 563
name = "Fallback"
username = "your_username"
password = "your_password"
max_connections = 10
tier = 1
connection_keepalive = 60
use_tls = true
tls_verify_cert = true