nzbfast on Usenet-lataaja, joka on rakennettu yhden ainoan läpimenon varaan: jokainen tavu dekoodataan, varmistetaan ja puretaan latauksen aikana. Jälkeenpäin ei jää kokoamisvaihetta, ei mitään enää varmistettavaa tai purettavaa. Sillä hetkellä kun edistymispalkki täyttyy, tiedosto on valmis ja todistettavasti eheä.
macOS · Windows · Linux · Docker: yksi itsenäinen suoritettava tiedosto, korjaus- ja purkutyökalut sisäänrakennettuina.

Miksi se on nopea
Tämä on arkkitehtuuria, ei mikro-optimointia, ja joka ikinen kohta on mitattu vertailulokissa komennoin, jotka voit ajaa itse uudelleen.
Useita artikkelipyyntöjä pysyy lennossa jokaisella yhteydellä, joten edestakainen kierros ei koskaan jätä sockettia jouten eikä TCP anna ruuhkanhallintaikkunansa kutistua artikkelien välillä. Neljällä sivustolla mittasimme +12%…+270% peräkkäishakuun verrattuna, ja linja kyllästyy 8 yhteydellä 30–50:n sijaan.
Artikkelit dekoodataan SIMD:llä paikan päällä ja kirjoitetaan kerran suoraan lopullisiin siirtymiinsä, minkä jälkeen ne varmistetaan PAR2:lla samoista dekoodauspuskureista. Store-tilan RAR-julkaisuissa sisältö puretaan latauksen aikana, joten osat eivät koskaan ole olemassa tiedostoina: levykirjoitukset ovat sisältö × 1.0.
Artikkeli lasketaan ”puuttuvaksi” vasta kun jokainen määritetty backbone on torjunut sen. Lohkotarkka kirjanpito julistaa työn tilaan COMPLETE, REPAIRABLE tai IMPOSSIBLE ennen tavujen tuhlaamista, hakee vain tarkalleen sopivan minimin palautuslohkoja ja pudottaa toivottomat lataukset sekunneissa.
Liukuhihna
Muut asiakkaat kirjoittavat arkisto-osat, lukevat ne takaisin varmistaakseen, lukevat ne toistamiseen purkaakseen ja kirjoittavat sitten tuloksen, karkeasti 2× kirjoitusta ja 2× lukua. Näin nzbfast tekee sen sijaan:
socket ──TLS──▶ rapidyenc SIMD decode (in place - 4.95 GB/s per core)
│
├─▶ pwrite at final offset (plain posts)
│ └─ or: RAR-map translate ─▶ pwrite straight into the
│ extracted file (store-mode posts - the rar
│ volumes never touch disk)
├─▶ PAR2 block hasher - every block MD5-verified from the
│ decode buffer; verification finishes with the download
└─▶ availability ledger - block-exact health, live
Pääominaisuudet
Koko lista (jokainen säädin, jokainen integraatio) on ominaisuussivulla.
Vertailut
Sama kone, samat kuusi palveluntarjoajaa, ajot lomitettuina peräkkäin. Ajastetaan se hetki, jolloin käyttökelpoinen, purettu tiedosto on olemassa, ainoa mittari, jolla on oikeasti väliä. Jokainen kilpailija viritettiin omaan dokumentoituun parhaimpaansa, aina myöten sen, että SABnzbdin liukuhihnoitus kytkettiin päälle, vaikka se ei sitä toimita.
190.6 GB NZB → yksi 167.9 GB mkv, M1 Ultra 10 GbE:llä, 6 palveluntarjoajaa × 8 yhteyttä. Sama työ valmistuu myös 1 GB:n muistibudjetin sisällä. Täydet taulukot, kaikki seitsemän skenaariota ja ne osuudet, joissa emme voita (sekä ohjeet niiden toistamiseen) löytyvät vertailusivulta.
Sopii pinoosi
Se kantaa täyden SABnzbd-yhteensopivan API:n, joten lisäät nzbfastin ”SABnzbd”-latausasiakkaana ja se vain toimii: nappaukset, kategoriat, prioriteetit, uudelleenyritykset, jälkikäsittelykomentosarjat SAB_*-sopimuksella, historia. Newznab-julkisivu menee vielä pidemmälle ja antaa *arrien hakea paikallisesta indeksistäsi kuin se olisi indeksoija.
Daemon puhuu myös NZBGetin JSON-RPC:tä, joten suositut puhelinkaukosäätimet ohjaavat nzbfastia ilman mitään muutoksia. Koontinäytöllä itsellään on lisäksi kunnollinen puhelinasettelu niitä hetkiä varten, kun olet poissa ison ruudun äärestä.
Yksi napsautus vetää palvelimesi olemassa olevasta SABnzbd- tai NZBGet-asennuksesta, ja se lukee sabnzbd.ini-tiedoston suoraan, jos vain sen löytää. Valvontakansiot, suodatetut RSS-syötteet, älykkäät kansiot TV-arkistoinnilla ja siivoussäännöt tulevat kaikki mukaan kyytiin.
Pura, kaksoisnapsauta käynnistintä, vastaa kolmeen kysymykseen (tai anna sen löytää olemassa oleva SABnzbd-määrityksesi) ja koontinäyttö avautuu. Ensimmäinen lataus laskeutuu alle kahdessa minuutissa.