انتقل إلى المحتوى

نداء الإجراء البعيد

يرجى إضافة وصلات داخلية للمقالات المتعلّقة بموضوع المقالة.
من ويكيبيديا، الموسوعة الحرة

نداء الإجراء البعيد (بالإنجليزية: Remote Procedure Calls)‏ (آر بي سي- RPC) هي ميثاق (بالإنجليزية: protocol)‏ يمكن أن يستعمل لطلب خدمة من برنامج في حاسوب آخر على الشبكة بدون الحاجة لفهم تفاصيل الشبكة.[1][2][3] (ويعرف أحيانا بإجراء النداء- procedure call - أو دالة النداء- function call - أو روتين النداء الجزئي-subroutine.) يستعمل نداء الإجراء البعيد في نموذج الزبون/المخدمنموذج الخادم والعميل. إنّ البرنامج الطالب هو الزبون وبرنامج تزويد الخدمة هو المخدم. نداء الإجراء البعيد هو عملية متزامنة يتطلّب من البرنامج الطالب (المستخدم) ان يعمل تعليق(Blocked) لحين عودة نتائج الإجراء البعيد، باستعمال المعالجة الخفيفة- lightweight processes – المفردة أو الخيوط -threads -(سلسلة التعليمات) المتعددة التي تتشارك في نفس المكان، ليسمح للآر بي سي المتعدّد- multiple RPCs - كي تنفذ بنفس الوقت.

الآر بي سي - RPC تقنية قويّة للأنظمة الموزعة-distributed systems، والتطبيقات المستندة على نموذج الزبون/المخدم، فهو يقوم على أن استدعاء إجراء محلي، ينادي إجراءً مطلوبأ ليس موجوداً في نفس المكان (العنوان)- فالاجراءان أو العمليتان(طلب الخدمة وتنفيذها) قد يكونان على نفس النظام، أو قد يكونان على الأنظمة المختلفة متصلة على الشبكة باستعمال الـRPC. الخطوات من أبو خلقي . 1_ الزبون يستدعي جذع (STUB)نفسه استدعاء عادي . 2_ جذع الزبون يبني رسالة(تحوي القيمة التي مررها الزبون) يستدعي بها نظام التشغيل للزبون . 3_ نظام تشغيل (OS)الزبون يرسل الرسالة ال نظام التشغيل للخادم البعيد . 4_ نظام تشغيل الخادم (البعيد)يمرر الرسالة إلى جذعه . 5_ جذع الخادم يفك الرسالة ويستخلص القيمة ويستدعي الخادم. 6_ الخادم يعالج القيمة وعيد النتاج إلى الجذع . 7_ جذع الخادم يستلم القيمة بعد معالجتها من الخادم ويضعها في رسالة ويستدعي نظام التشغيل التابع للخادم . 8_ نظام تشغيل الخادم يرسل الرسالة إلى نظام تشغيل الزبون . 9_ نظام تشغيل الزبون يستلم الرسالة ويمررها إلى جذ الزبون . 10_ جذع الزبون يستلم الرسالة ويفكها ويستخلص القيمة التي انتجها الخادم ويمرر القيمة للزبون.

مراجع

[عدل]
  1. ^ "Protocol Buffers - Google's data interchange format". Google project website. مؤرشف من الأصل في 2015-03-15. اطلع عليه بتاريخ 2011-11-01.
  2. ^ "Google Web Toolkit". Google project website. مؤرشف من الأصل في 2012-03-13. اطلع عليه بتاريخ 2011-11-01.
  3. ^ The A-Z of Programming Languages: Modula-3 - a-z of programming languages نسخة محفوظة 2009-01-05 على موقع واي باك مشين.. Computerworld. Retrieved on 2013-07-17. "نسخة مؤرشفة". مؤرشف من الأصل في 2009-01-05. اطلع عليه بتاريخ 2017-12-24.{{استشهاد ويب}}: صيانة الاستشهاد: BOT: original URL status unknown (link)