أحداث التنفيذ بزمن انتقال منخفض اليوم ، نقوم بتوثيق نظام أحداث التنفيذ في Monad ، والذي يسمح للمطورين بإنشاء تطبيقات عالية الأداء تتلقى بيانات أحداث بزمن انتقال أقل من عقدة Monad عبر قائمة انتظار الذاكرة المشتركة. لاستهلاك هذه البيانات في الوقت الفعلي، يمكنك كتابة برنامج في C أو C ++ أو Rust باستخدام SDK متوفرة، وتشغيله على مضيف يقوم بتشغيل عقدة Monad الكاملة. فيما يلي مقارنة موجزة مع الأنظمة الأخرى المماثلة: - Geth Live Tracing - واجهة برمجة التطبيقات القائمة على "الخطاف": يتم تحميل التعليمات البرمجية الخاصة بك في عقدة Geth كمكون إضافي ، ويتم تشغيلها بشكل متزامن (عبر عمليات الاسترجاع) أثناء التنفيذ - Reth ExEx - واجهة برمجة تطبيقات غير متزامنة قائمة على الوظيفة: يتم تحميل التعليمات البرمجية الخاصة بك في عقدة Reth ؛ يرى التنفيذ الأحداث بعد الحقيقة بدلا من أن يرى بشكل متزامن - Solana Geyser - واجهة برمجة تطبيقات قائمة على "الخطاف" ، وهو مكون إضافي يعمل داخل مدقق Solana ويستدعي عمليات الاسترجاعات أثناء التنفيذ كل هذه الثلاثة مختلفة عن نهج أحداث التنفيذ. في أحداث التنفيذ: - أنت ترى الأحداث "كما تحدث" ، كما هو الحال في Geth Live Tracer و Solana Geyser. على عكس هذه الأساليب ، لا يتم تشغيل التعليمات البرمجية الخاصة بك كمكون إضافي داخل محرك التنفيذ ، ولكن بالتوازي (بعد حوالي ميكروثانية واحدة) في عملية منفصلة - مثل Geth Live Tracer (ولكن على عكس Reth's ExEx) ، ترى كل "قطعة" من المعاملة - كل سجل ، وكل تغيير في الرصيد ، وما إلى ذلك - كحدث منفصل - على عكس Geth Live Tracer أو Geyser ، لا تقوم بتثبيت "خطافات" وتلقي عمليات رد الاتصال ؛ بدلا من ذلك، تقوم باستمرار باستطلاع الرأي بحثا عن سجلات الأحداث الجديدة، والتكرار من خلال أي أحداث جديدة يتم إرجاعها إليك (وتجاهل الأحداث التي لا تهتم بها) - نظرا لأن النظام يعتمد على المخازن المؤقتة لحلقة الذاكرة المشتركة ، فقد تفقد البيانات إذا كان المستهلك بطيئا جدا - يجب عليك مواكبة ذلك!