EVM هو جوهر إثيريوم، مسؤول عن تشغيل العقود الذكية ومعالجة المعاملات. إنه محرك حسابي، يوفر تجريدًا للحساب والتخزين، مشابهًا للآلة الافتراضية Java. يقوم EVM بتنفيذ مجموعة التعليمات الخاصة به من بايت كود، والتي يتم إنشاؤها عادةً بواسطة Solidity.
EVM هو آلة حالة شبه كاملة تورينغ. "شبه" لأن جميع خطوات التنفيذ ستستهلك موارد محدودة من الغاز، مما يمنع حدوث حلقات ميتة قد تؤدي إلى توقف النظام بأكمله.
لا تحتوي EVM على وظيفة الجدولة، حيث تستخرج وحدة التنفيذ في إثيريوم المعاملات من الكتلة، وتكون EVM مسؤولة عن تنفيذها بالتتابع. ستقوم عملية التنفيذ بتعديل أحدث حالة عالمية، وبعد اكتمال تنفيذ المعاملة يتم إجراء تجميع الحالة، للوصول إلى أحدث حالة عالمية بعد اكتمال الكتلة. يعتمد تنفيذ الكتلة التالية بشكل صارم على حالة العالم بعد تنفيذ الكتلة السابقة، لذا فإن عملية تنفيذ معاملات إثيريوم الخطية يصعب تحسينها للتنفيذ المتوازي.
تحدد بروتوكول إثيريوم تنفيذ المعاملات بترتيب. على الرغم من أن التنفيذ بترتيب يضمن أن المعاملات والعقود الذكية يمكن أن تنفذ بترتيب محدد، مما يضمن الأمان، إلا أنه في حالات الحمل العالي، قد يؤدي إلى ازدحام الشبكة وتأخير، وهذا هو السبب في وجود عنق زجاجة في أداء إثيريوم، مما يتطلب توسيع Layer2.
الطريق المتوازي لطبقة 1 عالية الأداء
تصمم معظم Layer1 عالية الأداء خطط تحسين خاصة بها بناءً على عيب عدم قدرة إيثريوم على المعالجة المتوازية، مع التركيز بشكل أساسي على جانبين: الآلة الافتراضية والتنفيذ المتوازي.
آلة افتراضية
تم تصميم EVM كآلة افتراضية ب256 بت، بهدف تسهيل معالجة خوارزمية تجزئة إثيريوم. ومع ذلك، فإن الكمبيوتر الذي يعمل فعليًا على EVM يحتاج إلى تعيين بايتات 256 بت إلى الهيكل المحلي لتنفيذ العقود الذكية، مما يجعل النظام بأكمله غير فعال. لذلك، فإن Layer1 عالية الأداء تعتمد بشكل أكبر على الآلات الافتراضية المستندة إلى WASM أو eBPF أو بايت كود Move، بدلاً من EVM.
WASM هو تنسيق بايت كود صغير الحجم، سريع التحميل، قابل للنقل ويعتمد على آلية أمان صندوق الرمل، يمكن للمطورين استخدام لغات برمجة متعددة لكتابة العقود الذكية، ثم تجميعها إلى بايت كود WASM وتنفيذها. لقد اعتمدت العديد من مشاريع البلوكشين WASM كمعيار، وستقوم إثيريوم أيضًا بدمج WASM في المستقبل.
eBPF نشأت من BPF، وتوفر مجموعة تعليمات أكثر ثراءً، مما يسمح بالتدخل الديناميكي في نواة نظام التشغيل دون تعديل الشيفرة المصدرية. بعض العقود الذكية التي يتم تنفيذها على بعض سلاسل الكتل يتم تجميعها إلى بايت كود قائم على eBPF وتشغيلها.
Move هي لغة برمجة جديدة للعقود الذكية، تركز على المرونة والأمان وقابلية التحقق. تهدف Move إلى معالجة مشاكل الأمان في الأصول والمعاملات، مما يجعل الأصول والمعاملات يمكن تعريفها والتحكم بها بدقة. تقوم بعض سلاسل الكتل بكتابة العقود الذكية من خلال إصدار مخصص خاص بها من Move.
تنفيذ متوازي في البلوكشين يعني معالجة المعاملات غير ذات الصلة في نفس الوقت. التحدي الرئيسي لتحقيق التنفيذ المتوازي هو تحديد المعاملات غير ذات الصلة، وما هي المعاملات المستقلة، وتعتمد معظم Layer1 عالية الأداء على طريقتين: طريقة الوصول إلى الحالة ونموذج التنفيذ المتفائل.
يجب أن تعرف طرق الوصول إلى الحالة مسبقًا أي جزء من حالة blockchain يمكن لكل معاملة الوصول إليه، من أجل تحليل المعاملات المستقلة. بعض برامج blockchain ( العقود الذكية ) بلا حالة، وتحتاج إلى استخدام الحسابات للوصول إلى الحالة أو الحفاظ عليها. يجب أن تحدد المعاملات أي الحسابات ستصل إليها، بحيث يمكن لوقت معالجة المعاملات جدولة المعاملات غير المتداخلة للتنفيذ المتوازي، مع ضمان اتساق البيانات.
يفترض نموذج التنفيذ المتوازي المتفائل أن جميع المعاملات مستقلة، ويتم التحقق من هذا الافتراض بشكل رجعي وإجراء التعديلات اللازمة. تستخدم بعض سلاسل الكتل طريقة ذاكرة المعاملات البرمجية للكتل لتطبيق التنفيذ المتوازي المتفائل. يتم إعداد المعاملات أولاً بترتيب معين، ثم يتم تقسيمها وتنفيذها بالتوازي عبر خيوط معالجة مختلفة. يتتبع النظام مواقع الذاكرة التي يتم فيها تغيير كل معاملة، وبعد كل جولة معالجة، يتم فحص نتائج جميع المعاملات، وإذا تم اكتشاف أن معاملة ما تلامس موقع ذاكرة تغيير معاملة سابقة، يتم محو نتائجها وإعادة تشغيلها.
EVM المتوازي
تم اقتراح EVM المتوازي في عام 2021، ويشير إلى EVM الذي يدعم معالجة عدة معاملات في وقت واحد، بهدف تحسين أداء وكفاءة EVM الحالي. في نهاية عام 2023، تم الإشارة مرة أخرى إلى EVM المتوازي في الصناعة، مما أشعل موجة من تقنيات التنفيذ المتوازي في Layer1 المتوافقة مع EVM.
تعريف EVM المتوازي المعقول يتضمن ثلاثة أنواع:
ترقية التنفيذ المتوازي لـ Layer1 المتوافقة مع EVM التي لم تعتمد تقنية التنفيذ المتوازي
تم اعتماد تقنية التنفيذ المتوازي لـ EVM المتوافقة مع Layer1
استخدام تقنية التنفيذ المتوازي للحلول المتوافقة مع EVM Layer1 غير المتوافقة مع EVM
تتبع بعض مشاريع Layer1 الناشئة نموذج التنفيذ المتوازي المتفائل، مما يسمح بالتنفيذ المتوازي للمعاملات داخل الكتلة لتحسين الكفاءة. تبدأ هذه المشاريع تنفيذ معاملات جديدة قبل إكمال تنفيذ الخطوة السابقة، وتتبع المدخلات/المخرجات وتعيد تنفيذ المعاملات غير المتسقة. يمكن لمحلل الشيفرة الثابتة التنبؤ بالعلاقات والتجنب من التوازي غير الفعال، والعودة إلى الوضع البسيط عند عدم اليقين.
تقوم مشاريع أخرى بتشغيل EVM كعقود ذكية لتحقيق التوافق مع EVM. هذه الخطة تحول رموز تشغيل EVM بسلاسة إلى رموز تشغيل آلة افتراضية معينة، مما يمكّن مشاريع Solidity من الاستفادة من أداء وأمان آلات افتراضية أخرى دون الحاجة إلى تعديل الشيفرة.
ملخص
تقنية التوازي في البلوكتشين هي موضوع يتم مناقشته بشكل متكرر، حاليًا تركز على تعديل وتقليد نموذج التنفيذ المتفائل، وتفتقر إلى اختراقات جوهرية. قد ينضم المزيد من المشاريع الجديدة من طبقة 1 في المستقبل إلى منافسة EVM المتوازية، كما ستقوم بعض مشاريع طبقة 1 القديمة بتنفيذ ترقية EVM المتوازية أو حلول التوافق مع EVM.
بالإضافة إلى EVM عالي الأداء، قد تظهر في مجال blockchain تقنيات متعددة مثل WASM وSVM وMove VM، مما يعزز التنوع في تطوير النظام البيئي بأكمله.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
ظهور EVM المتوازي: كيف يمكن لـ Layer1 عالي الأداء تجاوز قيود أداء إثيريوم
EVM:إثيريوم核心组件
EVM هو جوهر إثيريوم، مسؤول عن تشغيل العقود الذكية ومعالجة المعاملات. إنه محرك حسابي، يوفر تجريدًا للحساب والتخزين، مشابهًا للآلة الافتراضية Java. يقوم EVM بتنفيذ مجموعة التعليمات الخاصة به من بايت كود، والتي يتم إنشاؤها عادةً بواسطة Solidity.
EVM هو آلة حالة شبه كاملة تورينغ. "شبه" لأن جميع خطوات التنفيذ ستستهلك موارد محدودة من الغاز، مما يمنع حدوث حلقات ميتة قد تؤدي إلى توقف النظام بأكمله.
لا تحتوي EVM على وظيفة الجدولة، حيث تستخرج وحدة التنفيذ في إثيريوم المعاملات من الكتلة، وتكون EVM مسؤولة عن تنفيذها بالتتابع. ستقوم عملية التنفيذ بتعديل أحدث حالة عالمية، وبعد اكتمال تنفيذ المعاملة يتم إجراء تجميع الحالة، للوصول إلى أحدث حالة عالمية بعد اكتمال الكتلة. يعتمد تنفيذ الكتلة التالية بشكل صارم على حالة العالم بعد تنفيذ الكتلة السابقة، لذا فإن عملية تنفيذ معاملات إثيريوم الخطية يصعب تحسينها للتنفيذ المتوازي.
تحدد بروتوكول إثيريوم تنفيذ المعاملات بترتيب. على الرغم من أن التنفيذ بترتيب يضمن أن المعاملات والعقود الذكية يمكن أن تنفذ بترتيب محدد، مما يضمن الأمان، إلا أنه في حالات الحمل العالي، قد يؤدي إلى ازدحام الشبكة وتأخير، وهذا هو السبب في وجود عنق زجاجة في أداء إثيريوم، مما يتطلب توسيع Layer2.
الطريق المتوازي لطبقة 1 عالية الأداء
تصمم معظم Layer1 عالية الأداء خطط تحسين خاصة بها بناءً على عيب عدم قدرة إيثريوم على المعالجة المتوازية، مع التركيز بشكل أساسي على جانبين: الآلة الافتراضية والتنفيذ المتوازي.
آلة افتراضية
تم تصميم EVM كآلة افتراضية ب256 بت، بهدف تسهيل معالجة خوارزمية تجزئة إثيريوم. ومع ذلك، فإن الكمبيوتر الذي يعمل فعليًا على EVM يحتاج إلى تعيين بايتات 256 بت إلى الهيكل المحلي لتنفيذ العقود الذكية، مما يجعل النظام بأكمله غير فعال. لذلك، فإن Layer1 عالية الأداء تعتمد بشكل أكبر على الآلات الافتراضية المستندة إلى WASM أو eBPF أو بايت كود Move، بدلاً من EVM.
WASM هو تنسيق بايت كود صغير الحجم، سريع التحميل، قابل للنقل ويعتمد على آلية أمان صندوق الرمل، يمكن للمطورين استخدام لغات برمجة متعددة لكتابة العقود الذكية، ثم تجميعها إلى بايت كود WASM وتنفيذها. لقد اعتمدت العديد من مشاريع البلوكشين WASM كمعيار، وستقوم إثيريوم أيضًا بدمج WASM في المستقبل.
eBPF نشأت من BPF، وتوفر مجموعة تعليمات أكثر ثراءً، مما يسمح بالتدخل الديناميكي في نواة نظام التشغيل دون تعديل الشيفرة المصدرية. بعض العقود الذكية التي يتم تنفيذها على بعض سلاسل الكتل يتم تجميعها إلى بايت كود قائم على eBPF وتشغيلها.
Move هي لغة برمجة جديدة للعقود الذكية، تركز على المرونة والأمان وقابلية التحقق. تهدف Move إلى معالجة مشاكل الأمان في الأصول والمعاملات، مما يجعل الأصول والمعاملات يمكن تعريفها والتحكم بها بدقة. تقوم بعض سلاسل الكتل بكتابة العقود الذكية من خلال إصدار مخصص خاص بها من Move.
! EVM المتوازي: تبديل العقل من الطبقة 1 عالية الأداء
التنفيذ المتوازي
تنفيذ متوازي في البلوكشين يعني معالجة المعاملات غير ذات الصلة في نفس الوقت. التحدي الرئيسي لتحقيق التنفيذ المتوازي هو تحديد المعاملات غير ذات الصلة، وما هي المعاملات المستقلة، وتعتمد معظم Layer1 عالية الأداء على طريقتين: طريقة الوصول إلى الحالة ونموذج التنفيذ المتفائل.
يجب أن تعرف طرق الوصول إلى الحالة مسبقًا أي جزء من حالة blockchain يمكن لكل معاملة الوصول إليه، من أجل تحليل المعاملات المستقلة. بعض برامج blockchain ( العقود الذكية ) بلا حالة، وتحتاج إلى استخدام الحسابات للوصول إلى الحالة أو الحفاظ عليها. يجب أن تحدد المعاملات أي الحسابات ستصل إليها، بحيث يمكن لوقت معالجة المعاملات جدولة المعاملات غير المتداخلة للتنفيذ المتوازي، مع ضمان اتساق البيانات.
يفترض نموذج التنفيذ المتوازي المتفائل أن جميع المعاملات مستقلة، ويتم التحقق من هذا الافتراض بشكل رجعي وإجراء التعديلات اللازمة. تستخدم بعض سلاسل الكتل طريقة ذاكرة المعاملات البرمجية للكتل لتطبيق التنفيذ المتوازي المتفائل. يتم إعداد المعاملات أولاً بترتيب معين، ثم يتم تقسيمها وتنفيذها بالتوازي عبر خيوط معالجة مختلفة. يتتبع النظام مواقع الذاكرة التي يتم فيها تغيير كل معاملة، وبعد كل جولة معالجة، يتم فحص نتائج جميع المعاملات، وإذا تم اكتشاف أن معاملة ما تلامس موقع ذاكرة تغيير معاملة سابقة، يتم محو نتائجها وإعادة تشغيلها.
EVM المتوازي
تم اقتراح EVM المتوازي في عام 2021، ويشير إلى EVM الذي يدعم معالجة عدة معاملات في وقت واحد، بهدف تحسين أداء وكفاءة EVM الحالي. في نهاية عام 2023، تم الإشارة مرة أخرى إلى EVM المتوازي في الصناعة، مما أشعل موجة من تقنيات التنفيذ المتوازي في Layer1 المتوافقة مع EVM.
تعريف EVM المتوازي المعقول يتضمن ثلاثة أنواع:
تتبع بعض مشاريع Layer1 الناشئة نموذج التنفيذ المتوازي المتفائل، مما يسمح بالتنفيذ المتوازي للمعاملات داخل الكتلة لتحسين الكفاءة. تبدأ هذه المشاريع تنفيذ معاملات جديدة قبل إكمال تنفيذ الخطوة السابقة، وتتبع المدخلات/المخرجات وتعيد تنفيذ المعاملات غير المتسقة. يمكن لمحلل الشيفرة الثابتة التنبؤ بالعلاقات والتجنب من التوازي غير الفعال، والعودة إلى الوضع البسيط عند عدم اليقين.
تقوم مشاريع أخرى بتشغيل EVM كعقود ذكية لتحقيق التوافق مع EVM. هذه الخطة تحول رموز تشغيل EVM بسلاسة إلى رموز تشغيل آلة افتراضية معينة، مما يمكّن مشاريع Solidity من الاستفادة من أداء وأمان آلات افتراضية أخرى دون الحاجة إلى تعديل الشيفرة.
ملخص
تقنية التوازي في البلوكتشين هي موضوع يتم مناقشته بشكل متكرر، حاليًا تركز على تعديل وتقليد نموذج التنفيذ المتفائل، وتفتقر إلى اختراقات جوهرية. قد ينضم المزيد من المشاريع الجديدة من طبقة 1 في المستقبل إلى منافسة EVM المتوازية، كما ستقوم بعض مشاريع طبقة 1 القديمة بتنفيذ ترقية EVM المتوازية أو حلول التوافق مع EVM.
بالإضافة إلى EVM عالي الأداء، قد تظهر في مجال blockchain تقنيات متعددة مثل WASM وSVM وMove VM، مما يعزز التنوع في تطوير النظام البيئي بأكمله.