Solana Stream SDK مُحدَّث الآن بالكامل لترقية Solana v3

Solana Stream SDK مُحدَّث الآن بالكامل لترقية Solana v3

Solana Stream SDK مُحدَّث الآن بالكامل لترقية Solana v3
أصدرت ELSOUL LABO B.V. (المقر الرئيسي: أمستردام، هولندا؛ الرئيس التنفيذي: فوميتاكي كاواساكي) وValidators DAO إصدارات جديدة من Solana Stream SDK مفتوح المصدر، مُحدَّثة الآن بالكامل لدعم ترقية Solana v3. وقد رُقّي كل من إصدارَي Rust وTypeScript لضمان وصول موثوق وعالي الأداء إلى تدفقات بيانات Solana الفورية، بما في ذلك Shreds وGeyser gRPC، في عصر Alpenglow القادم.
يدعم الآن كريت Rust solana-stream-sdk ترقية Solana v3 مع الإصدار 0.6.1، بينما حُدِّثت حزمة TypeScript / Node.js @validators-dao/solana-stream-sdk إلى الإصدار 0.12.0. ويوفران معًا أساسًا موحّدًا لمعالجة التدفقات عالية الأداء مع انتقال Solana إلى بنيتها من الجيل التالي.

الخلفية — لماذا تتطلب Solana v3 وAlpenglow تحديثات من جانب العميل

تمثل Solana v3 انتقالًا كبيرًا نحو بنية الإجماع الجديدة Alpenglow. وتستبدل Alpenglow مزيج TowerBFT + Proof of History القائم بمسار إجماع مُعاد تصميمه يهدف إلى تحسين استجابة الشبكة تحسينًا جذريًا. وفي ظل Alpenglow، من المتوقع أن يقصر زمن النهائية (finality) من نحو 12 ثانية اليوم إلى حوالي 100–150 ميلي ثانية.
يغيّر هذا التحول جذريًا وتيرة إنتاج الكتل وخصائص انتشار البيانات الفورية عبر الشبكة.
وفي الوقت نفسه، يواجه المدققون ومشغّلو RPC متطلبات تشغيلية متزايدة في ظل v3، مع دورات بناء وتحديثات إعداد أكثر تكرارًا. وقد حدّثت Validators DAO بيئة جانب الخادم عبر أدوات مثل SLV، لكن هذا الانتقال يسلّط الضوء أيضًا على نقطة حاسمة:
يجب أيضًا تحديث برامج العميل إلى v3، وإلا فلن تتحقق مكاسب أداء الشبكة بالكامل.
وهذا ينطبق بوجه خاص على التدفقات الفورية مثل Shreds وGeyser gRPC. فالعملاء الذين لا يتبعون المواصفات أو خصائص التشغيل الجديدة يميلون إلى تراكم زمن الاستجابة أو فقدان الاتساق مع الوقت. ومع انتقال عقد RPC والمدققين إلى v3، يجب أن تهاجر برامج العميل الآن بالتوازي.
والهدف من تحديث Solana Stream SDK هذا هو سدّ تلك الفجوة وتوفير أساس جاهز للاستخدام للتطبيقات الفورية في عصر Alpenglow.

الجديد في Solana Stream SDK v0.6.1 (Rust) وv0.12.0 (TypeScript)

صُمم Solana Stream SDK منذ البداية لدعم كل من Shreds وGeyser gRPC. وفي هذا الإصدار، حُدِّثت SDK بعدة تحسينات لضمان أداء مستقر على Solana v3 والاستعداد لبيئة التشغيل القائمة على Alpenglow.

كريت Rust v0.6.1

صُمم إصدار Rust كتنفيذ مرجعي عالي الأداء للمتداولين والمفهرسات وأي أحمال عمل فورية تتطلب أقصى إنتاجية. وتشمل التحديثات الرئيسية:
  • دعم تغييرات البروتوكول في سلسلة Solana v3
  • معالجة كفؤة لتدفقات Shreds وGeyser gRPC عبر بيئة التشغيل غير المتزامنة لـ Rust
  • غلاف محسّن حول تعريفات protobuf المتعلقة بـ Shreds، ما يسهّل تنفيذ منطق معالجة التدفقات
  • مسارات تنفيذ متعددة الخيوط محسّنة لتقليل تراكم زمن الاستجابة حتى في ظل إنتاجية عالية مستدامة
يُوصى بإصدار Rust للمستخدمين الذين يحتاجون إلى استغلال Shreds وGeyser gRPC بالكامل بأعلى مستوى أداء ممكن.

TypeScript / Node.js v0.12.0

صُمم إصدار TypeScript للحفاظ على سهولة تطوير Node.js مع دمج معالجة تدفقات مدعومة بـ Rust في الخلفية. وفي v0.12.0، طُبِّقت التحسينات التالية:
  • الاحتفاظ الكامل بالواجهة الموجهة بالأحداث القائمة (مثل emitter.on) لتجنب التغييرات الكاسرة
  • دمج Rust وNAPI-RS في معالجة التدفقات الداخلية، ما يتيح لـ Node.js معالجة Shreds بموثوقية حيث بلغ @grpc/grpc-js سابقًا حدوده
  • معالجة مُحدَّثة لتدفقات Geyser gRPC وShreds معًا لضمان التوافق مع Solana v3
وبالنسبة إلى معظم المستخدمين، لا تتطلب الترقية إلى v0.12.0 سوى رفع الإصدار في package.json — دون أي تعديلات على الكود.

لماذا لا يستطيع Node.js وحده مواكبة Shreds

يُعد ShredStream مصدر البيانات الأدنى زمن استجابة والأعلى تكرارًا في منظومة Solana. وبينما تتيح Shreds رؤية فورية لا مثيل لها لنشاط الشبكة، فإنها تتطلب أيضًا إنتاجية معالجة عالية جدًا من العميل.
يواجه عملاء Node.js المبنيون على @grpc/grpc-js اختناقات بنيوية:
  • حلقة الأحداث أحادية الخيط، لذا فإن فك تسلسل protobuf واستدعاءات المستخدم تحجب بعضها بعضًا
  • عندما تصل الرسائل بسرعة، يتشبع خيط JavaScript وتتراكم طوابير المعالجة
  • يقلّل التحكم في تدفق HTTP/2 نافذة الاستقبال كلما امتلأت المخازن المؤقتة، ما يوقف التدفق في النهاية ويسبب مظهر «تباطؤ الشبكة» أو «لا توجد بيانات»
في كثير من الحالات المرصودة، لا تكون المشكلة في الشبكة ولا في خادم ShredStream — بل في عميل Node.js الذي يتخلف داخليًا.
هذا القيد متأصل في Node.js عند معالجة Shreds غير المفلترة على نطاق واسع.
ويتجاوز Rust + NAPI-RS هذا القيد.

كيف يُسرّع Rust + NAPI-RS معالجة التدفقات في Node.js

يُحوِّل إصدار TypeScript من Solana Stream SDK العمل الثقيل إلى Rust مع الحفاظ على واجهات API المألوفة لـ JavaScript.
  • تُنفَّذ إدارة اتصالات gRPC واستقبال التدفقات وفك تسلسل protobuf بشكل غير متزامن في Rust
  • يستلم Node.js البيانات المعالجة كتدفق قياسي أو باعث أحداث، ما يسمح للكود القائم بمواصلة العمل كما هو
  • يقلّل NAPI-RS الأعباء بين Rust وNode.js إلى أدنى حد، ما يتيح إنتاجية متعددة الخيوط حقيقية خلف واجهة JavaScript
ونتيجة لذلك، يمكن للتطبيقات المكتوبة بـ Solana Stream SDK معالجة إنتاجية أعلى بكثير من Shreds وGeyser gRPC مقارنة بالنهج القائمة على Node.js وحده باستخدام @grpc/grpc-js، مع الحفاظ على خصائص زمن استجابة مستقرة حتى في ظل حركة كثيفة.

لماذا يهم دعم كل من Shreds وGeyser gRPC في SDK واحدة

يمكن النظر إلى بيانات Solana الفورية في طبقتين متكاملتين:
  • Shreds:
    أجزاء فائقة انخفاض زمن الاستجابة تنبعث مباشرة من القائد، وتوفر أبكر رؤية ممكنة لنشاط السلسلة
  • Geyser gRPC:
    تدفقات منظمة للسلوتات والمعاملات وتحديثات الحسابات، توفر نموذج بيانات نظيفًا وقابلًا للتنبؤ
يتيح Solana Stream SDK للمطورين البدء بـ Geyser gRPC لفهم بنى البيانات، ثم الانتقال إلى Shreds لسيناريوهات فائقة انخفاض زمن الاستجابة — من دون تبديل الأدوات أو إعادة كتابة خط المعالجة.
ومع تسريع Alpenglow لإنتاج الكتل وتأكيدها، يصبح هذا النهج ثنائي الطبقات أكثر قيمة.

البدء: الموارد وبيئات الاختبار

Solana Stream SDK مفتوح المصدر بالكامل، وأكواد الأمثلة لكل من Shreds وGeyser gRPC متاحة على GitHub.
وللاختبار في العالم الحقيقي، تقدم ERPC تجربة مجانية ليوم واحد لنقاط نهاية ShredStream وGeyser gRPC عالية الأداء، ما يتيح للمطورين التحقق من سلوك v3 في ظل ظروف بمستوى الإنتاج.
الموقع الرسمي لـ ERPC: https://erpc.global/ar/

انضم إلى مجتمع Validators DAO

نرحب في مجتمع Validators DAO بالأسئلة والملاحظات والمناقشات حول Solana v3 وAlpenglow وتصميم التدفقات الفورية وتحسينات SDK.
Discord الرسمي لـ Validators DAO: https://discord.gg/C7ZQSrCkYR
ومع انتقال Solana إلى عصر Alpenglow، ستحقق شبكتها مستويات غير مسبوقة من الأداء الفوري. وستواصل Validators DAO وELSOUL LABO توفير أدوات مفتوحة المصدر عالية الجودة لمساعدة المطورين على بناء الجيل التالي من التطبيقات الفورية على Solana.
شكرًا لدعمكم المتواصل.