nzbfast ist ein Usenet-Downloader, der um einen einzigen Durchlauf herum gebaut ist: Jedes Byte wird dekodiert, geprüft und entpackt, während es lädt. Danach kommt kein Zusammensetz-Durchlauf mehr, nichts bleibt am Ende zu prüfen oder zu entpacken. In dem Moment, in dem sich der Fortschrittsbalken füllt, ist die Datei fertig und nachweislich intakt.
macOS · Windows · Linux · Docker: eine einzige, in sich geschlossene Programmdatei, Reparatur- und Entpack-Tools eingebaut.

Warum es schnell ist
Das ist Architektur, keine Mikro-Optimierung, und jedes bisschen davon ist im Benchmark-Log mit Befehlen belegt, die du selbst nachfahren kannst.
Mehrere Artikel-Anfragen bleiben pro Verbindung gleichzeitig unterwegs, sodass ein Round-Trip den Socket nie leerlaufen lässt und TCP sein Congestion-Window zwischen Artikeln nie verfallen lässt. An vier Standorten haben wir +12 % bis +270 % gegenüber seriell gemessen, und eine Leitung sättigt schon bei 8 Verbindungen statt 30–50.
Artikel werden per SIMD an Ort und Stelle dekodiert, einmal an ihre endgültigen Offsets geschrieben, aus den Decode-Puffern PAR2-geprüft, und Store-Modus-RAR-Inhalte werden während des Downloads entpackt. Die Volumes existieren nie als Dateien. Schreiblast = Inhalt × 1,0.
Ein Artikel gilt erst als „fehlend“, wenn jedes konfigurierte Backbone ihn verweigert hat. Blockgenaue Buchführung entscheidet VOLLSTÄNDIG / REPARIERBAR / UNMÖGLICH, bevor Bytes verschwendet werden, holt die passgenaue Mindestmenge an Recovery-Blöcken und bricht aussichtslose Downloads in Sekunden ab.
Die Pipeline
Die Konkurrenz schreibt die Archiv-Volumes, liest sie zum Prüfen zurück, liest sie zum Entpacken erneut und schreibt dann die Ausgabe, grob 2× Schreiben und 2× Lesen. nzbfast macht es stattdessen so:
socket ──TLS──▶ rapidyenc SIMD-Dekodierung (an Ort und Stelle - 4,95 GB/s pro Kern)
│
├─▶ pwrite an den endgültigen Offset (einfache Posts)
│ └─ oder: RAR-Map-Übersetzung ─▶ pwrite direkt in die
│ entpackte Datei (Store-Modus-Posts - die RAR-
│ Volumes berühren nie die Festplatte)
├─▶ PAR2-Block-Hasher - jeder Block wird aus dem Decode-
│ Puffer MD5-geprüft; die Prüfung endet mit dem Download
└─▶ Verfügbarkeits-Register - blockgenauer Zustand, live
Kernfunktionen
Die komplette Liste (jede Stellschraube, jede Integration) steht auf der Funktionsseite.
Benchmarks
Dieselbe Maschine, dieselben sechs Provider, Läufe verschränkt hintereinander. Zeit, bis eine benutzbare, entpackte Datei existiert, die einzige Kennzahl, die zählt. Jede Konkurrenz auf ihr dokumentiertes Bestes getunt, SABnzbds Pipelining etwa eingeschaltet, obwohl es ohne ausgeliefert wird.
190,6 GB NZB → eine einzelne 167,9 GB mkv, M1 Ultra auf 10 GbE, 6 Provider × 8 Verbindungen. Derselbe Job läuft in einem 1-GB-Speicher-Budget durch. Vollständige Tabellen, alle sieben Szenarien und die Etappen, die wir nicht gewinnen (plus Reproduktionsanleitung) auf der Benchmark-Seite.
Passt zu deinem Stack
Volle SABnzbd-kompatible API. Füge nzbfast als „SABnzbd“-Download-Client hinzu, und es läuft einfach: Grabs, Kategorien, Prioritäten, erneute Versuche, Nachbearbeitungs-Skripte (SAB_*-Vertrag), Verlauf. Die Newznab-Fassade lässt die *arrs außerdem deinen lokalen Index durchsuchen, als wäre er ein Indexer.
Der Daemon spricht auch NZBGets JSON-RPC. Die beliebten Handy-Fernsteuerungen bedienen nzbfast unverändert. Und das Dashboard selbst hat ein vollwertiges Handy-Layout, wenn du mal weg vom großen Bildschirm bist.
Ein Klick importiert deine Server aus einer bestehenden SABnzbd- oder NZBGet-Installation (liest auch sabnzbd.ini direkt). Watch-Ordner, RSS-Feeds mit Filtern, smarte Ordner mit TV-Ablage und Aufräumregeln kommen gleich mit.
Auspacken, Launcher doppelklicken, drei Fragen beantworten (oder es deine SABnzbd-Konfiguration finden lassen), und das Dashboard öffnet sich. Erster Download in unter zwei Minuten.