تقنية استدعاء الطرائق البعادي: الفرق بين النسختين

من ويكيبيديا، الموسوعة الحرة
[نسخة منشورة][نسخة منشورة]
تم حذف المحتوى تمت إضافة المحتوى
JarBot (نقاش | مساهمات)
ط بوت:إضافة مصدر من ويكي الإنجليزية أو الفرنسية (تجريبي)
سطر 1: سطر 1:
{{يتيمة|تاريخ=فبراير 2016}}
{{يتيمة|تاريخ=فبراير 2016}}
{{مصدر|تاريخ=فبراير 2016}}


'''استدعاء الطرائق عن بعد''' (اختصاراً RMI) هي آلية وتقنية تسمح لنا ببناء [[تطبيق موزع]] وذلك بتزويدنا بإمكانية استدعاء توابع (أو طرائق) عن بعد بين عدة آلات مختلفة JVM.
'''استدعاء الطرائق عن بعد''' (اختصاراً RMI) هي آلية وتقنية تسمح لنا ببناء [[تطبيق موزع]] وذلك بتزويدنا بإمكانية استدعاء توابع (أو طرائق) عن بعد بين عدة آلات مختلفة JVM.<ref>[http://www.javaworld.com/javaworld/jw-11-2000/jw-1110-smartproxy.html Get smart with proxies and RMI - JavaWorld]</ref><ref>{{cite book |first=Ian J |last=Taylor|title=From P2P to Web Services and Grids : Peers in a Client/Server World |series=Computer Communications and Networks |publisher=Springer-Verlag |publication-place=London |year=2005 |isbn=1852338695 |doi=10.1007/b138333 |url=http://www.worldcat.org/title/from-p2p-to-web-services-and-grids-peers-in-a-clientserver-world/oclc/827073874/viewport |oclc=827073874}}</ref><ref>{{cite web|title=Java RMI Release Notes|url=http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/relnotes.html|publisher=Oracle|accessdate=9 May 2012}}</ref>


و الـ RMI هي نوع من أنواع [[البرمجيات الوسيطة]] التي تستخدم لمكاملة تطبيقات شبكة ([[تطبيقات موزعة]])،وهي معيار من شركة SUN وبالتالي فهي خاصة بـلغة [[جافا]] حصراً، وبالتالي لا يمكن مكاملة تطبيقات شبكية لا تستخدم لغة جافا بواسطة الـ RMI.
و الـ RMI هي نوع من أنواع [[البرمجيات الوسيطة]] التي تستخدم لمكاملة تطبيقات شبكة ([[تطبيقات موزعة]])،وهي معيار من شركة SUN وبالتالي فهي خاصة بـلغة [[جافا]] حصراً، وبالتالي لا يمكن مكاملة تطبيقات شبكية لا تستخدم لغة جافا بواسطة الـ RMI.

نسخة 23:46، 23 ديسمبر 2017

استدعاء الطرائق عن بعد (اختصاراً RMI) هي آلية وتقنية تسمح لنا ببناء تطبيق موزع وذلك بتزويدنا بإمكانية استدعاء توابع (أو طرائق) عن بعد بين عدة آلات مختلفة JVM.[1][2][3]

و الـ RMI هي نوع من أنواع البرمجيات الوسيطة التي تستخدم لمكاملة تطبيقات شبكة (تطبيقات موزعة)،وهي معيار من شركة SUN وبالتالي فهي خاصة بـلغة جافا حصراً، وبالتالي لا يمكن مكاملة تطبيقات شبكية لا تستخدم لغة جافا بواسطة الـ RMI.

طبعاً يوجد عدة تطبيقات وسيطة أخرى مكافئة للـ RMI منها:

ٌRPC,ORB,Queue,خدمة ويب ،CORBA وكلها لها الهدف نفسه وهو مكاملة التطبيقات على الشبكة.

ميزات الـ RMI

مل يميز الـRMI عن باقي أنواع البرمجيات الوسيطة Middleware

  • أكثر سهولة في الاستخدام ،مقارنة مثلاً بالـ CORBA التي تتميز بالصعوبة البالغة في الاستخدام.
  • آمنة. بما أنها تعمل مع لغة جافا قهي أكثر أمناً من باقي أنواع البرمجيات الوسيطة.
  • تجنبنا استخدام الـ Socket والتي يعتتبر التعامل معها صعب و Low-level مستوى منخفض، إذ أن عملية تحزيم الطلب وإرساله ثم إعادة فك التحزيم تتم بشكل تلقائي دون الحاجة لتدخل المبرمج فيها.
  • لاتحتاج إلى توصيف بروتوكول تخاطب بين المخدم والزبون.

آلية عمل الـRMI

إن مبدأ عمل الـ RMI بسيط للغاية، فهي تعتمد على وجود RMI Server وهو عبارة عن برنامج جافا عادي يقوم بإنشاء الأغراض Object التي نريد استدعاءها أو استدعاء طرق Method منها عن بعد ثم يقوم بوضع bind ربط أو تسجيل تلك الأغراض المنشأة فيما يسمى بالـ RMI ،لتصبح بعد ذلك متاحة للزبائن. بالإضافة لوجود مخدم RMI نحتاج لوجود RMI Client والذي يطلب من المخدم السابق(بعد أن يعرف نفسه) البحث عن غرض ما ضمن الـ Registry ثم يعيد المخدم لذلك الزبون عندما يجد ذلك الغرض ما يسمى بـ Stub (يعرف أيضاً بـ Remote reference) ثم استدعاء الطرائق المطلوبة، طبعاً عملياً الزبون يستدعي الطريقة البعيدة أي أن الطريقة المستدعاة تنفذ عند المخدم وليس عند الزبون أما النتيجة return فهي التي تعاد للزبون. مع ملاحظة أن الـ RMI هو استدعاء غير متزامن.

المراجع

  1. ^ Get smart with proxies and RMI - JavaWorld
  2. ^ Taylor، Ian J (2005). From P2P to Web Services and Grids : Peers in a Client/Server World. Computer Communications and Networks. London: Springer-Verlag. DOI:10.1007/b138333. ISBN:1852338695. OCLC:827073874.
  3. ^ "Java RMI Release Notes". Oracle. اطلع عليه بتاريخ 2012-05-09.

روابط خارجية