في مؤتمر سولانا بريك بوينت الأسبوع الماضي، كانت الأجواء مفعمة بالحيوية مع إطلاق المنتجات والعديد من الأحداث الجانبية الجذابة. كان من أبرز الأحداث البارزة إطلاق الإصدار الأول من عميل مدقق Solana Firedancer رسمياً على الشبكة الرئيسية.
وقد حظي هذا الإنجاز البارز باهتمام خاص، مما يشير إلى تحقيق قفزة كبيرة في أداء شبكة سولانا مع الحد من مخاطر تعطل الشبكة الناجم عن فشل عميل واحد.
يعود تاريخ تطوير Firedancer إلى عام 2021-2022، بقيادة مجموعة Jump Trading Group كثاني عميل مدقق في Solana (مع العميل الأصلي، Agave، الذي طورته شركة Anza). كان هدفها الأساسي هو القضاء على نقاط الفشل الوحيدة، وتعزيز المتانة والمرونة الكلية للشبكة.
على عكس المدقق الأصلي المستند إلى Rust، فإن Firedancer مكتوب بلغة C، باستثناء كود Rust. يقلل هذا الاختيار بشكل كبير من التأثير المحتمل للثغرات المحتملة على الشبكة، مما يضيف طبقة قوية من الأمان إلى Solana.
ما هو أداء فايردانسر؟
خلال عرض تقديمي في Solana Breakpoint، عرض كبير علماء Jump Crypto كيفن باورز قدرة Firedancer على معالجة أكثر من مليون معاملة في الثانية (TPS)، وهو ما يتجاوز بكثير الحد النظري الحالي لشبكة Solana الذي يبلغ عشرات الآلاف من المعاملات في الثانية. وقارن هذا الإنجاز مجازاً بتوسيع “طريق ريفي” إلى “طريق سريع بين الولايات”، مشيراً إلى التحسين المزدوج لتكاليف الشبكة وسعتها.
شارك المهندس الأساسي ليام هيجر التقدم المحرز على شبكة الاختبار، مشيرًا إلى أن فايردانسر نجح في إنتاج أكثر من 20,000 كتلة بنسبة تجميع تصل إلى 1%. وأظهر مهندس آخر هو أريامان جاين أداء فايردانسر في ظل ظروف محددة، كاشفًا عن معدل سرعة في الثانية يصل إلى مليون في الثانية في بيئة 10 مدققات، مع أكثر من 1.2 مليار عملية حسابية في الثانية وسعة 3.5 جيجابت في الثانية لمساحة الكتل.
كيف يعمل فايردانسر؟
بُنيت Firedancer على ثلاثة مكونات رئيسية: مكدس حوسبة عالية الأداء، ومكدس شبكة، ووقت التشغيل وآليات الإجماع. وتكمن قدرتها على رفع أداء Solana إلى مليون عملية في الثانية (حدود البروتوكول الحالية حوالي 81,000 عملية في الثانية) في بنيتها المبتكرة وتحسين تدفق البيانات.
يستخدم المدقق نموذج التزامن الذي ينفذ مهام متنوعة عبر عدد قليل من الخيوط، حيث يركز كل خيط على مهام محددة مثل معالجة حزم الشبكة والتحقق من صحة المعاملات وتعبئة الكتل. يعمل هذا التصميم على زيادة استخدام الموارد وتسريع معالجة المعاملات بشكل كبير.
على وجه التحديد، يقوم كل مؤشر ترابط بتنفيذ واحدة من 11 مهمة مختلفة. تتطلب بعض المهام مؤشر ترابط واحد فقط، بينما يتطلب البعض الآخر عدة مؤشرات ترابط تعمل بالتوازي. يعمل كل مؤشر ترابط على نواة مخصصة لوحدة المعالجة المركزية، مما يضمن عدم سكونه أو إعادة توجيهه من قبل نظام التشغيل.
يقدم Firedancer أيضًا بنية تسمى “المربعات”، حيث يمثل كل مربع مهمة وخيطها قيد التشغيل ونواة وحدة المعالجة المركزية المخصصة. يتيح هذا المزيج مرونة وفعالية ضبط الأداء. على سبيل المثال، يمكن أن تتعامل مربعات net وQuic مع أكثر من مليون TPS، بينما تركز مربعات التحقق والمصرف على التحقق من صحة المعاملات وتنفيذ الكتل، وهو ما يكفي لسيناريوهات العملات العالية.
تسرد الوثائق الرسمية لـ Firedancer الـ 11 بلاطة التالية:
- صافي: يرسل حزم الشبكة ويستقبلها (يمكن لكل لوحة التعامل مع >1 مليون TPS);
- كويك: يتلقى المعاملات من العملاء، ويدير الاتصال ومعالجة الحزم لبروتوكول QUIC (يمكن لكل لوحة معالجة >1 مليون TPS);
- التحقق: التحقق من صحة التواقيع المشفرة للمعاملات الواردة، وتصفية المعاملات غير الصالحة (يمكن لكل لوحة التعامل مع 20-40,000 TPS);
- خصم: التحقق من المعاملات الواردة المكررة وتصفيتها;
- العبوة: حزم المعاملات الواردة عند العمل كقائد، وجدولتها بذكاء لتنفيذها;
- البنك: تنفيذ المعاملات المجدولة (يمكن لكل لوحة التعامل مع 20-40,000 TPS);
- بوه: التجزئة المستمرة في الخلفية، ومزج التجزئة التي تم إنشاؤها مع المعاملات المنفذة لإثبات الترتيب والتوقيت;
- تمزيق: يوزع بيانات الكتلة على الشبكة عندما يعمل كقائد؛ وعندما لا يعمل كقائد، فإنه يستقبل بيانات الكتلة ويعيد إرسالها (يعتمد الإنتاجية بشكل أساسي على حجم المجموعة، حيث تشير المعايير إلى >1 مليون TPS للمجموعات الصغيرة);
- المتجر: تستقبل بيانات الكتلة عند العمل كقائد أو من العقد الأخرى عندما تكون قائدة، وتخزنها في قاعدة بيانات قرص محلي;
- متري: يجمع معلومات المراقبة حول المربعات الأخرى ويوفرها لنقاط نهاية HTTP;
- وقع: يحتفظ بالمفتاح الخاص للمُدقِّق ويستجيب لطلبات التوقيع من المربعات الأخرى.
والجدير بالذكر أنه قبل أن تنضج فايردانسر، دخلت نسختها الانتقالية، فرانكندانسر، بالفعل Solana الشبكة الرئيسية. فرانكيندانسر هو مزيج من كود Firedancer وAgave، حيث يستفيد من مزايا Firedancer في مكدس الشبكة وإنتاج الكتل مع الاحتفاظ بوظائف التنفيذ والإجماع في Agave. في المقابل، تم بناء Firedancer بالكامل من الصفر دون أي كود Agave.
ما هو تأثير فايردانسر؟
مما لا شك فيه أن إطلاق Firedancer له آثار كبيرة على نظام سولانا البيئي، مما يعزز بشكل كبير من تنوع المدققين ويقلل من مخاطر نقاط الفشل الوحيدة، وبالتالي تعزيز موثوقية الشبكة.
وعلاوة على ذلك، تحافظ Firedancer على التوافق مع البروتوكولات الحالية، مما يضمن انتقالاً سلساً للنظام البيئي دون الحاجة إلى تعديلات كبيرة من مطوري DApp والمستخدمين.
على الرغم من أن Firedancer حاليًا في وضع عدم التصويت ويخضع للتحسين والتدقيق المستمر، إلا أنه يرسم صورة مفعمة بالأمل للتطوير المستقبلي لشبكة سولانا.