nzbfast هي أداة تنزيل Usenet مبنية حول خط معالجة ذي تمريرة واحدة: كل بايت يُفكّ تشفيره ويُتحقَّق منه ويُستخرج أثناء تنزيله. لا تمريرة تجميع، ولا تمريرة تحقق، ولا تمريرة فك ضغط. عندما يمتلئ شريط التقدم، يكون الملف جاهزًا وسليمًا بشكل يمكن إثباته.
macOS · Windows · Linux · Docker: ملف تنفيذي واحد قائم بذاته، مع أدوات الإصلاح وفك الضغط مدمجة.

لماذا هي سريعة
ليست تحسينات دقيقة، بل بنية معمارية. كل واحدة مقيسة في سجل قياس الأداء بأوامر قابلة لإعادة الإنتاج.
تبقى عدة طلبات للمقالات قيد التنفيذ لكل اتصال، فلا تُبقي رحلات الذهاب والإياب المقبس خاملًا أبدًا، ولا يتلاشى TCP نافذة الازدحام الخاصة به بين المقالات. مقيسة بزيادة من +12% إلى +270% مقارنة بالتسلسلي في أربعة مواقع؛ يُشبَع الخط بـ 8 اتصالات بدلًا من 30–50.
تُفكّ شيفرة المقالات بتقنية SIMD في مكانها، وتُكتب مرة واحدة عند إزاحاتها النهائية، ويُتحقَّق منها بـ PAR2 من مخازن فك التشفير، وتُستخرج محتويات RAR بوضع التخزين أثناء التنزيل، فلا توجد الوحدات كملفات على الإطلاق. كتابات القرص = المحتوى × 1.0.
لا يكون المقال "مفقودًا" إلا عندما يرفضه كل عمود فقري مُهيَّأ. تحدد المحاسبة الدقيقة على مستوى الكتلة COMPLETE / REPAIRABLE / IMPOSSIBLE قبل إهدار البايتات، وتجلب الحد الأدنى المناسب تمامًا من كتل الاسترداد، وتُلغي التنزيلات اليائسة في ثوانٍ.
خط المعالجة
يكتب المنافسون وحدات الأرشيف، ثم يقرؤونها من جديد للتحقق، ويقرؤونها مرة أخرى للاستخراج، ثم يكتبون الناتج، أي نحو 2× كتابات و2× قراءات. أما nzbfast فتفعل هذا بدلًا من ذلك:
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
أبرز الميزات
القائمة الكاملة (كل خيار ضبط، وكل تكامل) موجودة على صفحة الميزات.
قياس الأداء
الجهاز نفسه، والمزوّدون الستة أنفسهم، تُشغَّل بالتناوب واحدة تلو الأخرى. الوقت حتى وجود ملف قابل للاستخدام ومُستخرَج، المقياس الوحيد الذي يهم. كل منافس مضبوط على أفضل إعداداته الموثقة (بما في ذلك تشغيل خط معالجة SABnzbd تشغيلًا، وهو يُشحن دونه).
NZB بحجم 190.6 GB → ملف mkv واحد بحجم 167.9 GB، M1 Ultra على 10 GbE، 6 مزوّدين × 8 اتصالات. تكتمل المهمة نفسها ضمن ميزانية ذاكرة 1 GB. الجداول الكاملة، والسيناريوهات السبعة كلها، والأشواط التي لا نفوز بها (بالإضافة إلى كيفية إعادة الإنتاج) على صفحة قياس الأداء.
يناسب حزمتك
واجهة API كاملة متوافقة مع SABnzbd، أضف nzbfast كعميل تنزيل "SABnzbd" وسيعمل ببساطة: عمليات الجلب والفئات والأولويات وإعادة المحاولات وبرامج المعالجة اللاحقة (عقد SAB_*) والسجل. تتيح واجهة Newznab أيضًا لحزمة *arr البحث في فهرسك المحلي كأنه مفهرِس.
يتحدث الخادم الخفي بـ JSON-RPC الخاص بـ NZBGet أيضًا، فتتحكم أدوات الهاتف البعيدة الشائعة في nzbfast دون تعديل. ولوحة المعلومات نفسها تملك تخطيطًا هاتفيًا من الطراز الأول لحين ابتعادك عن الشاشة الكبيرة.
تستورد نقرة واحدة خوادمك من منشأة SABnzbd أو NZBGet قائمة (كما يقرأ sabnzbd.ini مباشرةً). وتأتي معها مجلدات المراقبة، وخلاصات RSS بمرشحات، والمجلدات الذكية بترتيب تلفزيوني، وقواعد التنظيف ضمن الحزمة.
فُك الضغط، وانقر نقرًا مزدوجًا على المُشغّل، وأجب عن ثلاثة أسئلة (أو دعه يعثر على إعدادات SABnzbd الخاصة بك)، وتُفتح لوحة المعلومات. أول تنزيل خلال دقيقتين.