يواجه العديد من الأشخاص مصطلح RPC عند إضافة شبكة RPC يدويًا في محافظ مثل MetaMask. ومع ذلك، فإن RPC هي تقنية أساسية لا غنى عنها لتطبيقات بلوكتشين مثل Dapps و Wallets و CEXs. RPC تعني «مكالمة الإجراءات عن بُعد». في Web2، RPC هي تقنية اتصال تسمح لأحد أجهزة الكمبيوتر بالاتصال وتنفيذ برنامج على جهاز آخر. من خلال RPC، يحتاج المتصل فقط إلى تمرير اسم الخدمة والمعلمات للتواصل، وهو مفهوم واسع. في سياق بلوكتشين، RPC هو البروتوكول الذي يسمح للعملاء بالتفاعل مع بلوكتشين. يمكن للمستخدمين الاستعلام عن المعلومات المتعلقة ببلوكتشين (مثل ارتفاع الكتلة وتفاصيل الكتلة واتصالات العقدة) وإرسال المعاملات من خلال واجهة RPC.
صفحة إضافات شبكة Metamask (المصدر: Metamask)
من الضروري فهم الأدوار الأساسية الثلاثة لـ RPC:
الرسم البياني لمكالمات RPC (المصدر: Google)
تظهر البنية الفنية التفصيلية في الشكل أعلاه. للتوضيح لك بشكل أكثر وضوحًا، نأخذ عملية إكمال مدير المشروع للتقرير كمثال لشرح عملية الاستدعاء التفصيلية:
للتوضيح باستخدام تشبيه بسيط، تخيل أنك مدير مشروع يحتاج إلى تقرير معقد. قد لا تكون بارعًا من الناحية الفنية، لذلك يمكنك الاستعانة بمحلل بيانات. أنت:
نظرًا للطبيعة اللامركزية والموزعة للبلوكشين، يتم تخزين البيانات عبر العديد من العقد. والجدير بالذكر أنه لتشغيل عقدة والمشاركة في التحقق من صحة الكتلة، تحتاج أجهزة الكمبيوتر إلى تلبية معايير الأجهزة والبرامج المحددة. وفي شبكات مثل ETH وADA، تتطلب العقد قيد التشغيل أيضًا تخزين كمية معينة من التوكنات.
لا يمكن لكل عقدة استخدام بروتوكول RPC. عادةً ما يمكن فقط لأجهزة الكمبيوتر التي تعمل ببرنامج عميل blockchain أن تعمل كنقاط RPC. لا تستطيع معظم المشاريع تحمل تكاليف التشغيل والصيانة لتشغيل العقد، نظرًا للوقت الهائل والقوى العاملة والموارد المطلوبة. أدى ذلك إلى ظهور نقاط RPC المخصصة ومقدمي الخدمات.
من القسم السابق، من الواضح أن الوظيفة الحيوية لـ RPC (استدعاء الإجراءات عن بُعد) هي إنشاء اتصال بين التطبيقات الطرفية وسلسلة الكتل. لذلك، فإن الاستخدام الأساسي لـ RPC هو، أثناء عملية التطوير، اختيار مزود خدمة RPC مناسب لتمكين المستخدمين من تنفيذ المعاملات والاستعلامات على السلسلة.
بالنسبة لمستخدم Web3 العادي، فإن حالة الاستخدام الأكثر مباشرة هي التبديل إلى بوابة RPC ذات زمن انتقال أقل أثناء ازدحام الشبكة، وبالتالي تقليل التأخير وتسريع تنفيذ المعاملات. من الناحية النظرية، يمكن تطبيق RPC على أي مشروع يتطلب معاملات blockchain أو استعلامات المعلومات.
RPC الخاص
تقدم الغالبية العظمى من سلاسل الكتل RPCs عامة مجانية لاختبار التطبيقات. ومع ذلك، تأتي هذه القيود مع قيود الأسعار، مما يؤدي إلى ظهور RPCs الخاصة. تحتوي نقطة نهاية RPC الخاصة على عنوان URL فريد، ويمكن لمالكها فقط استخدام عنوان URL هذا لإرسال المعاملات إلى تجمع الذاكرة العامة، وبالتالي توفير اتصال مباشر بموفر العقدة. تشمل فوائد استخدام RPCs الخاصة في الممارسة ما يلي:
فيما يتعلق باستخدام RPC في التطوير، يجب على المطورين الرجوع إلى الوثائق. تستخدم هذه المقالة مفتاح RPC في المحافظ، مثل MetaMask، كتوضيحات: انتقل إلى الإعدادات، وحدد الشبكة، وانقر على اسم الشبكة الذي ترغب في تغيير RPC له، وقم بتعديل عنوان URL الخاص بـ RPC على اليمين، واحفظه لإنهاء التغيير. يجب على المستخدمين مراعاة مستويات زمن الوصول لأن التبديل إلى RPC عالي الكمون قد يؤدي إلى إبطاء سرعات المعاملات.
يحتوي MetaMask على صفحة تغيير RPC (المصدر: إصدار ويب MetaMask).
عند استخدامه، من الضروري مقارنة مستويات زمن الوصول. إذا قمت بالتبديل إلى RPC بزمن انتقال أعلى، فقد تتباطأ سرعات المعاملات.
نظرًا لتعقيد إعداد وتشغيل العقد، ظهرت فئة من الشركات المتخصصة في تشغيل هذه العقد لتقديم خدمات مثل RPC/API للمشاريع. يمكن للمشاريع إرسال طلبات إلى هؤلاء المزودين عبر الإنترنت. يقوم هؤلاء الموفرون بتشغيل العقد المتزامنة بالكامل والمحدثة دائمًا على مدار الساعة طوال أيام الأسبوع، بدلاً من المشاريع التي ترسل الطلبات إلى العقد المحلية الخاصة بهم. يقدم العديد من مقدمي الخدمات أكثر من مجرد خدمات RPC؛ كما أنها توفر العديد من الخدمات ذات الصلة مثل واجهات برمجة التطبيقات وحزم تطوير البرامج وما إلى ذلك. بالنسبة للمطورين والمستخدمين الفرديين، عند اختيار مزود، من الضروري مراعاة عوامل مثل سرعة المعاملات والتكلفة وخدمة العملاء ومجموعة الأدوات التي يقدمونها.
يوفر مزودو خدمة RPC أيضًا RPCs الخاصة المذكورة سابقًا. يلبي معظم مزودي RPC العمليات متعددة السلاسل وغالبًا ما يقدمون إصدارات تجريبية مجانية وإصدارات عامة. فيما يلي بعض مزودي خدمة RPC المشهورين:
روبوتات الفلاش
Flashbots هي شركة قائمة على الأبحاث تركز على القيمة القابلة للاستخراج من التعدين (MEV)، وتهدف إلى التخفيف من العوامل الخارجية السلبية والمخاطر التي تشكلها MEV على سلاسل بلوكتشين للعقود الذكية. تتكون خدمة RPC الخاصة بهم، Flashbots Protect، من كل من RPC وواجهة برمجة التطبيقات. يمكن للمطورين تضمينه بسهولة في تطبيقاتهم باستخدام واجهة برمجة التطبيقات. يمكن للمستخدمين العاديين إضافة RPC الخاص به إلى محافظهم، وتوجيه معاملاتهم إلى Flashbots. تتضمن هذه العملية إرسال المعاملات مباشرة إلى عمال المناجم بدلاً من المجمع العام، مما يمنع «هجوم الساندويتش» السائد في MEV. تعد Flashbots حاليًا كيانًا رائدًا في صناعة أبحاث MEV.
ملاحظة: يشير هجوم الساندويتش إلى تكتيك إكمال الصفقة قبل تأكيد معاملة المستخدم مباشرة، مما يتسبب في ارتفاع السعر، ثم البيع بعلاوة بعد اكتمال معاملة المستخدم لتحقيق ربح.
إنفورا
Infura هو منتج IaaS (البنية التحتية كخدمة) مصمم لتسهيل الوصول إلى بيانات Ethereum للمطورين والمستخدمين. تعمل كعقدة إثيريوم كاملة، فهي توفر واجهة API التي تسمح لـ dApps بالاتصال بسرعة بمنصة إيثريوم للتفاعل دون تشغيل عقدة إيثريوم محلية. يشمل عملاؤها ميتاماسك ويونيسواب وكومبوند والمزيد.
كيمياء
توفر Alchemy حزم SDK وواجهات برمجة التطبيقات لإنشاء تطبيقات Web3 dApps متعددة السلاسل، وتقوم بتثقيف المستخدمين حول استخدام هذه الأدوات من خلال مبادرات تشبه المجتمع والجامعة. دعمت Alchemy أكثر من 100 مليار دولار من قيمة المعاملات على السلسلة، ولديها أكثر من 10 ملايين مستخدم نهائي، وحققت أكثر من 1.5 مليار دولار من الإتاوات. يشمل العملاء البارزون Opensea و GMX و AAVE.
أنكر
تقدم Ankr العديد من خدمات العقدة، بما في ذلك العقد العامة والخاصة، والتي تدعم أكثر من 30 بلوكشين. يوفر Ankr أيضًا واجهات API استنادًا إلى بروتوكولات RPC و WebSocket، بالإضافة إلى العديد من أدوات التطوير ومجموعات تطوير البرامج، مثل Web3.js و Truffle، مما يمكّن المطورين من إنشاء تطبيقات بلوكتشين ونشرها بسهولة. تتضمن قاعدة عملائهم Binance و Sushiswap و Meta Apes والمزيد.
عقدة سريعة
يوفر QuickNode خدمات API للمستخدمين مباشرة من خلال العقد المخصصة. وهو يدعم مناطق مختلفة وشبكات اختبار متعددة وعقد أرشيفية، مما يوفر للمطورين أداءً محسنًا للوصول إلى بلوكتشين واستقرارًا أكبر. تتضمن الميزات لوحة معلومات سهلة الاستخدام ومجموعة تحليلات وكاتب مكالمات الإجراءات عن بُعد، مما يدعم أكثر من 20 سلسلة. يشمل العملاء نانسن وألجوفي ودابرادر.
بلوك بي
BlockPi عبارة عن RPC بهيكل شبكة موزع، وطبقة تسريع موزعة متعددة السلاسل تشارك في بيئة Web3 اللامركزية. في أوائل عام 2023، نجحت في ترقية RPC العام الخاص بها، مما يوفر خدمة RPC مجانية أكثر استقرارًا وأسرع. من الناحية النظرية، تعالج بنيتها بشكل أساسي مشكلة الازدحام لطلبات RPC وتفتخر بقابلية التوسع اللانهائية.
مع النضج المستمر لتقنية blockchain وزيادة اعتماد Web3، فإن خدمات RPC، باعتبارها واحدة من الخدمات التأسيسية، تحمل مستقبلًا واعدًا. من المتوقع أن يرتفع الطلب من المطورين على خدمات RPC. من منظور الفرد، يمكن للمتداولين المتكررين الذين يحتاجون إلى سرعات معاملات أسرع أن يستفيدوا بشكل كبير من اختيار RPC عام أقل استخدامًا أو الاستثمار في RPC خاص، خاصة لأنشطة مثل الإنزال الجوي أو سك عملات NFT.
يواجه العديد من الأشخاص مصطلح RPC عند إضافة شبكة RPC يدويًا في محافظ مثل MetaMask. ومع ذلك، فإن RPC هي تقنية أساسية لا غنى عنها لتطبيقات بلوكتشين مثل Dapps و Wallets و CEXs. RPC تعني «مكالمة الإجراءات عن بُعد». في Web2، RPC هي تقنية اتصال تسمح لأحد أجهزة الكمبيوتر بالاتصال وتنفيذ برنامج على جهاز آخر. من خلال RPC، يحتاج المتصل فقط إلى تمرير اسم الخدمة والمعلمات للتواصل، وهو مفهوم واسع. في سياق بلوكتشين، RPC هو البروتوكول الذي يسمح للعملاء بالتفاعل مع بلوكتشين. يمكن للمستخدمين الاستعلام عن المعلومات المتعلقة ببلوكتشين (مثل ارتفاع الكتلة وتفاصيل الكتلة واتصالات العقدة) وإرسال المعاملات من خلال واجهة RPC.
صفحة إضافات شبكة Metamask (المصدر: Metamask)
من الضروري فهم الأدوار الأساسية الثلاثة لـ RPC:
الرسم البياني لمكالمات RPC (المصدر: Google)
تظهر البنية الفنية التفصيلية في الشكل أعلاه. للتوضيح لك بشكل أكثر وضوحًا، نأخذ عملية إكمال مدير المشروع للتقرير كمثال لشرح عملية الاستدعاء التفصيلية:
للتوضيح باستخدام تشبيه بسيط، تخيل أنك مدير مشروع يحتاج إلى تقرير معقد. قد لا تكون بارعًا من الناحية الفنية، لذلك يمكنك الاستعانة بمحلل بيانات. أنت:
نظرًا للطبيعة اللامركزية والموزعة للبلوكشين، يتم تخزين البيانات عبر العديد من العقد. والجدير بالذكر أنه لتشغيل عقدة والمشاركة في التحقق من صحة الكتلة، تحتاج أجهزة الكمبيوتر إلى تلبية معايير الأجهزة والبرامج المحددة. وفي شبكات مثل ETH وADA، تتطلب العقد قيد التشغيل أيضًا تخزين كمية معينة من التوكنات.
لا يمكن لكل عقدة استخدام بروتوكول RPC. عادةً ما يمكن فقط لأجهزة الكمبيوتر التي تعمل ببرنامج عميل blockchain أن تعمل كنقاط RPC. لا تستطيع معظم المشاريع تحمل تكاليف التشغيل والصيانة لتشغيل العقد، نظرًا للوقت الهائل والقوى العاملة والموارد المطلوبة. أدى ذلك إلى ظهور نقاط RPC المخصصة ومقدمي الخدمات.
من القسم السابق، من الواضح أن الوظيفة الحيوية لـ RPC (استدعاء الإجراءات عن بُعد) هي إنشاء اتصال بين التطبيقات الطرفية وسلسلة الكتل. لذلك، فإن الاستخدام الأساسي لـ RPC هو، أثناء عملية التطوير، اختيار مزود خدمة RPC مناسب لتمكين المستخدمين من تنفيذ المعاملات والاستعلامات على السلسلة.
بالنسبة لمستخدم Web3 العادي، فإن حالة الاستخدام الأكثر مباشرة هي التبديل إلى بوابة RPC ذات زمن انتقال أقل أثناء ازدحام الشبكة، وبالتالي تقليل التأخير وتسريع تنفيذ المعاملات. من الناحية النظرية، يمكن تطبيق RPC على أي مشروع يتطلب معاملات blockchain أو استعلامات المعلومات.
RPC الخاص
تقدم الغالبية العظمى من سلاسل الكتل RPCs عامة مجانية لاختبار التطبيقات. ومع ذلك، تأتي هذه القيود مع قيود الأسعار، مما يؤدي إلى ظهور RPCs الخاصة. تحتوي نقطة نهاية RPC الخاصة على عنوان URL فريد، ويمكن لمالكها فقط استخدام عنوان URL هذا لإرسال المعاملات إلى تجمع الذاكرة العامة، وبالتالي توفير اتصال مباشر بموفر العقدة. تشمل فوائد استخدام RPCs الخاصة في الممارسة ما يلي:
فيما يتعلق باستخدام RPC في التطوير، يجب على المطورين الرجوع إلى الوثائق. تستخدم هذه المقالة مفتاح RPC في المحافظ، مثل MetaMask، كتوضيحات: انتقل إلى الإعدادات، وحدد الشبكة، وانقر على اسم الشبكة الذي ترغب في تغيير RPC له، وقم بتعديل عنوان URL الخاص بـ RPC على اليمين، واحفظه لإنهاء التغيير. يجب على المستخدمين مراعاة مستويات زمن الوصول لأن التبديل إلى RPC عالي الكمون قد يؤدي إلى إبطاء سرعات المعاملات.
يحتوي MetaMask على صفحة تغيير RPC (المصدر: إصدار ويب MetaMask).
عند استخدامه، من الضروري مقارنة مستويات زمن الوصول. إذا قمت بالتبديل إلى RPC بزمن انتقال أعلى، فقد تتباطأ سرعات المعاملات.
نظرًا لتعقيد إعداد وتشغيل العقد، ظهرت فئة من الشركات المتخصصة في تشغيل هذه العقد لتقديم خدمات مثل RPC/API للمشاريع. يمكن للمشاريع إرسال طلبات إلى هؤلاء المزودين عبر الإنترنت. يقوم هؤلاء الموفرون بتشغيل العقد المتزامنة بالكامل والمحدثة دائمًا على مدار الساعة طوال أيام الأسبوع، بدلاً من المشاريع التي ترسل الطلبات إلى العقد المحلية الخاصة بهم. يقدم العديد من مقدمي الخدمات أكثر من مجرد خدمات RPC؛ كما أنها توفر العديد من الخدمات ذات الصلة مثل واجهات برمجة التطبيقات وحزم تطوير البرامج وما إلى ذلك. بالنسبة للمطورين والمستخدمين الفرديين، عند اختيار مزود، من الضروري مراعاة عوامل مثل سرعة المعاملات والتكلفة وخدمة العملاء ومجموعة الأدوات التي يقدمونها.
يوفر مزودو خدمة RPC أيضًا RPCs الخاصة المذكورة سابقًا. يلبي معظم مزودي RPC العمليات متعددة السلاسل وغالبًا ما يقدمون إصدارات تجريبية مجانية وإصدارات عامة. فيما يلي بعض مزودي خدمة RPC المشهورين:
روبوتات الفلاش
Flashbots هي شركة قائمة على الأبحاث تركز على القيمة القابلة للاستخراج من التعدين (MEV)، وتهدف إلى التخفيف من العوامل الخارجية السلبية والمخاطر التي تشكلها MEV على سلاسل بلوكتشين للعقود الذكية. تتكون خدمة RPC الخاصة بهم، Flashbots Protect، من كل من RPC وواجهة برمجة التطبيقات. يمكن للمطورين تضمينه بسهولة في تطبيقاتهم باستخدام واجهة برمجة التطبيقات. يمكن للمستخدمين العاديين إضافة RPC الخاص به إلى محافظهم، وتوجيه معاملاتهم إلى Flashbots. تتضمن هذه العملية إرسال المعاملات مباشرة إلى عمال المناجم بدلاً من المجمع العام، مما يمنع «هجوم الساندويتش» السائد في MEV. تعد Flashbots حاليًا كيانًا رائدًا في صناعة أبحاث MEV.
ملاحظة: يشير هجوم الساندويتش إلى تكتيك إكمال الصفقة قبل تأكيد معاملة المستخدم مباشرة، مما يتسبب في ارتفاع السعر، ثم البيع بعلاوة بعد اكتمال معاملة المستخدم لتحقيق ربح.
إنفورا
Infura هو منتج IaaS (البنية التحتية كخدمة) مصمم لتسهيل الوصول إلى بيانات Ethereum للمطورين والمستخدمين. تعمل كعقدة إثيريوم كاملة، فهي توفر واجهة API التي تسمح لـ dApps بالاتصال بسرعة بمنصة إيثريوم للتفاعل دون تشغيل عقدة إيثريوم محلية. يشمل عملاؤها ميتاماسك ويونيسواب وكومبوند والمزيد.
كيمياء
توفر Alchemy حزم SDK وواجهات برمجة التطبيقات لإنشاء تطبيقات Web3 dApps متعددة السلاسل، وتقوم بتثقيف المستخدمين حول استخدام هذه الأدوات من خلال مبادرات تشبه المجتمع والجامعة. دعمت Alchemy أكثر من 100 مليار دولار من قيمة المعاملات على السلسلة، ولديها أكثر من 10 ملايين مستخدم نهائي، وحققت أكثر من 1.5 مليار دولار من الإتاوات. يشمل العملاء البارزون Opensea و GMX و AAVE.
أنكر
تقدم Ankr العديد من خدمات العقدة، بما في ذلك العقد العامة والخاصة، والتي تدعم أكثر من 30 بلوكشين. يوفر Ankr أيضًا واجهات API استنادًا إلى بروتوكولات RPC و WebSocket، بالإضافة إلى العديد من أدوات التطوير ومجموعات تطوير البرامج، مثل Web3.js و Truffle، مما يمكّن المطورين من إنشاء تطبيقات بلوكتشين ونشرها بسهولة. تتضمن قاعدة عملائهم Binance و Sushiswap و Meta Apes والمزيد.
عقدة سريعة
يوفر QuickNode خدمات API للمستخدمين مباشرة من خلال العقد المخصصة. وهو يدعم مناطق مختلفة وشبكات اختبار متعددة وعقد أرشيفية، مما يوفر للمطورين أداءً محسنًا للوصول إلى بلوكتشين واستقرارًا أكبر. تتضمن الميزات لوحة معلومات سهلة الاستخدام ومجموعة تحليلات وكاتب مكالمات الإجراءات عن بُعد، مما يدعم أكثر من 20 سلسلة. يشمل العملاء نانسن وألجوفي ودابرادر.
بلوك بي
BlockPi عبارة عن RPC بهيكل شبكة موزع، وطبقة تسريع موزعة متعددة السلاسل تشارك في بيئة Web3 اللامركزية. في أوائل عام 2023، نجحت في ترقية RPC العام الخاص بها، مما يوفر خدمة RPC مجانية أكثر استقرارًا وأسرع. من الناحية النظرية، تعالج بنيتها بشكل أساسي مشكلة الازدحام لطلبات RPC وتفتخر بقابلية التوسع اللانهائية.
مع النضج المستمر لتقنية blockchain وزيادة اعتماد Web3، فإن خدمات RPC، باعتبارها واحدة من الخدمات التأسيسية، تحمل مستقبلًا واعدًا. من المتوقع أن يرتفع الطلب من المطورين على خدمات RPC. من منظور الفرد، يمكن للمتداولين المتكررين الذين يحتاجون إلى سرعات معاملات أسرع أن يستفيدوا بشكل كبير من اختيار RPC عام أقل استخدامًا أو الاستثمار في RPC خاص، خاصة لأنشطة مثل الإنزال الجوي أو سك عملات NFT.